AWS AppFabric
SaaS アプリケーションのセキュリティログを OCSF 形式に正規化し、一元的な監査とセキュリティ分析を実現するサービス
概要
AWS AppFabric は、企業が利用する複数の SaaS アプリケーション (Google Workspace、Microsoft 365、Salesforce、Slack、Zoom など) のセキュリティ関連ログを収集し、OCSF (Open Cybersecurity Schema Framework) 形式に正規化して一元管理するサービスです。各 SaaS の監査ログは独自のフォーマットで提供されるため、横断的な分析が困難でしたが、AppFabric が共通スキーマに変換することで、異なる SaaS 間のユーザー行動を統一的に分析できます。正規化されたログは S3 や Security Lake に出力でき、Athena や OpenSearch での分析、SIEM ツールへの連携が容易になります。SaaS のシャドー IT 検出やインサイダー脅威の早期発見に活用できます。
アプリバンドルと認証接続の設定
AppFabric の設定は、アプリバンドル (App Bundle) の作成から始まります。アプリバンドルは AppFabric の管理単位で、1 つのバンドルに複数の SaaS アプリケーションを接続します。各 SaaS との接続には、OAuth 2.0 認証を使用するものと、API キーを使用するものがあります。例えば、Google Workspace は OAuth 2.0 で接続し、管理者権限を持つアカウントで認証フローを完了させます。Microsoft 365 は Azure AD のアプリ登録を通じて接続し、必要な API 権限 (AuditLog.Read.All など) を付与します。接続が確立されると、AppFabric は定期的に各 SaaS の監査ログ API をポーリングし、新しいイベントを取得します。取得間隔はサービスによって異なりますが、多くの場合 5 - 15 分程度のラグで最新のログが反映されます。接続の認証情報は暗号化されて保存され、トークンの自動更新も AppFabric が管理するため、運用者が手動でトークンをリフレッシュする必要はありません。
OCSF 正規化とログ出力先の設計
AppFabric の核心機能は、各 SaaS 固有のログフォーマットを OCSF (Open Cybersecurity Schema Framework) に正規化する処理です。OCSF はセキュリティイベントの共通スキーマで、イベントカテゴリ (認証、アクセス制御、ファイル操作など)、アクター (誰が)、ターゲット (何に対して)、結果 (成功/失敗) を統一的に表現します。例えば、Google Workspace のログイン成功イベントと Microsoft 365 のサインイン成功イベントは、どちらも OCSF の Authentication カテゴリ、activity_id: Logon として正規化されます。出力先として S3 バケットと Amazon Security Lake を選択でき、S3 出力の場合は Parquet 形式または JSON 形式を指定できます。Parquet 形式は Athena でのクエリパフォーマンスに優れ、大量ログの分析に適しています。Security Lake に出力すれば、CloudTrail や VPC Flow Logs など他の AWS セキュリティログと統合して横断分析が可能になります。出力先のパーティション設計は日付ベースで自動的に行われ、特定期間のログ検索を効率化します。
セキュリティ分析のユースケースと運用設計
AppFabric で収集・正規化したログの主要なユースケースは、不審なユーザー行動の検出です。例えば、同一ユーザーが短時間に複数の国からログインしている (不可能な移動)、通常アクセスしないファイルを大量にダウンロードしている (データ持ち出しの兆候)、深夜に管理者権限の変更が行われている (権限昇格攻撃) といったパターンを、SaaS 横断で検出できます。Athena でクエリを定期実行し、異常パターンに一致するイベントを検出して SNS で通知する自動化パイプラインが実務では効果的です。また、退職予定者のアカウントアクティビティを監視し、退職前の大量データダウンロードを検知するインサイダー脅威対策にも活用できます。コスト面では、AppFabric 自体の料金はイベント取り込み数に基づく従量課金で、S3 への保存コストと Athena のクエリコストが別途発生します。ログの保持期間を設定し、古いログを S3 Glacier に移行するライフサイクルルールでストレージコストを最適化する設計が推奨されます。対応 SaaS は継続的に追加されており、導入前に対象 SaaS がサポートされているか公式ドキュメントで確認することが重要です。