AWS認定資格 WEB問題集&徹底解説
CloudOpsエンジニア -アソシエイト
AWSサービスの一つであるAWS CloudTrailはどんな内容なのでしょうか?また、AWS認定資格のSysOpsアドミニストレーター -アソシエイト(SOA)に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います
1. サービス概要
AWS CloudTrailは、AWSアカウント内のAPIコールおよびアカウントアクティビティ(誰が・いつ・どこから・何をしたか)を記録する、ガバナンス・コンプライアンス・運用監査・リスク監査のためのフルマネージドサービスです。 マネジメントコンソール、AWS CLI、SDK、および他のAWSサービスからの操作をイベントとして記録します。
CloudTrailはすべてのアカウントでデフォルト有効であり、直近90日間の管理イベントを「イベント履歴(Event history)」として無料で閲覧できます。90日を超えた長期保管や高度な分析には、証跡(Trail)を作成してS3へ継続的に配信するか、CloudTrail Lakeを使用します。
主なユースケースは、セキュリティ監査、コンプライアンス(ログの長期保管)、インシデント調査、不正操作の検知、運用トラブルシュートです。
2. 主な特徴と機能
2.1 イベントの種類(最重要)
- 管理イベント(Management Events): リソースに対する制御操作(EC2の起動、IAMポリシー変更、VPC作成など)。読み取り/書き込みを区別可能。各証跡で1コピー目は無料。
- データイベント(Data Events): リソース内のデータ操作(S3オブジェクトのGet/Put、Lambda関数のInvoke、DynamoDB項目操作など)。大量・デフォルト無効・有料。
- Insightsイベント(Insights Events): 書き込み系APIコールの異常な急増などを機械学習で検出。有効化により追加課金。
2.2 証跡(Trail)とイベント履歴
- イベント履歴: 直近90日の管理イベントを追加設定なしで閲覧(無料)。
- 証跡(Trail): イベントをS3バケットへ継続配信し、長期保管・分析を可能にする。
- マルチリージョン証跡: 1つの証跡で全リージョンのイベントを集約(推奨・デフォルト)。新規リージョンも自動対象。
- グローバルサービスイベント: IAM・STS・CloudFront等のグローバル操作も記録できる。
2.3 組織証跡(Organization Trail)
AWS Organizations配下の全メンバーアカウントのイベントを管理アカウントの単一証跡に集約します。メンバーアカウントは無効化・削除できず、一元的なガバナンスを実現します。
2.4 ログファイル整合性検証(Log File Integrity Validation)
証跡はダイジェストファイル(digest file)をハッシュ(SHA-256)と署名(RSA)付きでS3に配信します。これにより、ログファイルが改ざん・削除されていないことを暗号学的に検証できます。
2.5 配信先と連携
- Amazon S3: ログの主たる長期保管先。ライフサイクル/Glacierでコスト最適化。
- CloudWatch Logs: 証跡をCloudWatch Logsへ送り、メトリクスフィルター + アラームで不正操作(例: ルートログイン、SG変更)をほぼリアルタイム検知。
- EventBridge: 特定APIコールをトリガーにLambda/SNS等を起動し、自動修復を実装。
- Amazon Athena: S3上のログをSQLでクエリ・調査。
2.6 CloudTrail Lake
イベントを不変のデータストアに取り込み、最大10年保持し、SQLで直接クエリできるマネージド機能です。S3 + Athenaを構築せずに長期保管と分析を実現します。
2.7 暗号化と保護
- S3配信ログはSSE-S3またはSSE-KMSで暗号化可能。
- S3バケットポリシー/MFA Delete/Object Lockでログの保護・改ざん防止を強化。
3. アーキテクチャおよび技術要素
- ユーザー/サービスがコンソール・CLI・SDK・API経由でAWSを操作する。
- CloudTrailが操作をイベントとして捕捉し、イベント履歴(90日)に記録する。
- 証跡が有効な場合、イベントを指定S3バケットへ継続配信し、ダイジェストファイルで整合性を担保する。
- 必要に応じてCloudWatch Logsへ転送し、メトリクスフィルター+アラームで検知する。
- EventBridgeで特定APIをトリガーにLambda等の自動対応を実行する。
- Athena/CloudTrail Lakeでログをクエリし、監査・調査を行う。
マルチリージョン証跡・組織証跡により、グローバルかつマルチアカウントのアクティビティを一元的に監査できます。
4. セキュリティと認証・認可
- IAMによるアクセス制御: 証跡の作成・停止やログ閲覧を最小権限で制御。
- ログの暗号化: SSE-S3 / SSE-KMSでS3上のログを保護。KMSキーポリシーで配信権限を制御。
- ログファイル整合性検証: ダイジェストファイルで改ざん・削除を検出。
- S3バケット保護: バケットポリシー、MFA Delete、Object Lockで監査証跡を保全。
- 組織証跡: メンバーアカウントが無効化できず、ガバナンスを担保。
- 不正検知: CloudWatch Logs + メトリクスフィルター、GuardDutyとの組み合わせで脅威を検出。
5. 料金形態
- イベント履歴(90日): 無料。
- 管理イベント: 各リージョンで1コピー目の証跡配信は無料。2つ目以降の証跡や追加コピーは有料。
- データイベント: 記録件数に応じた有料(S3/Lambda/DynamoDB等、大量になりやすいので注意)。
- Insightsイベント: 分析対象イベント数に応じた有料。
- S3ストレージ: ログ保管のS3料金。ライフサイクルでGlacier等へ移行しコスト最適化。
- CloudTrail Lake: 取り込み量・保持・クエリスキャン量に応じた課金。
6. よくあるアーキテクチャ・設計パターン
- 一元監査: マルチリージョン証跡 + 組織証跡で全アカウント・全リージョンのログを集約。
- リアルタイム検知: CloudTrail → CloudWatch Logs → メトリクスフィルター + アラームでルートログイン/SG変更等を即時通知。
- 自動修復: EventBridge → Lambdaで危険な変更を検知して自動ロールバック。
- 長期保管とコンプライアンス: S3ライフサイクル + Object Lock、またはCloudTrail Lakeで改ざん不可な長期保持。
- 調査・フォレンジック: Athena/CloudTrail LakeのSQLでインシデント時の操作を追跡。
- 脅威検知: GuardDutyがCloudTrailを入力に異常を分析。
7. 設定・デプロイ手順(ハンズオン例)
- CloudTrailコンソールで「証跡の作成」を開く。
- マルチリージョン証跡を有効化し、配信先のS3バケットを指定(新規作成可)。
- SSE-KMS暗号化とログファイル整合性検証を有効にする。
- 必要に応じてCloudWatch Logsへの配信を設定する。
- 記録するイベント種別(管理/データ/Insights)を選択する(データイベントはコスト注意)。
- CloudWatch Logsにメトリクスフィルター(例: ルートユーザーのサインイン)とアラームを作成する。
- Athenaでログテーブルを作成し、特定操作をSQLで検索して動作確認する。
8. 試験で問われやすいポイント
8.1 CloudTrailの役割(vs CloudWatch / Config)
Q: 「誰がいつどのAPIを呼んだか」を調べたい。どのサービス?
A: AWS CloudTrail。
Q: CloudTrailとCloudWatchの違いは?
A: CloudTrailはAPIコール/アクティビティ(監査ログ)、CloudWatchはパフォーマンス/状態のメトリクス・ログを扱う。
Q: CloudTrailとAWS Configの違いは?
A: CloudTrailは「誰が何をしたか(APIコール)」、Configは「リソースの設定状態とその変化(構成履歴/コンプライアンス)」を追跡する。
8.2 イベントの種類
Q: S3オブジェクトのGET/PUTを記録するには?
A: データイベント(Data Events)を有効化する。デフォルトは無効で有料。
Q: デフォルトで無料記録される90日間のログは?
A: 管理イベント(Management Events)。イベント履歴として閲覧できる。
Q: 書き込みAPIの異常な急増を自動検出するには?
A: CloudTrail Insightsイベントを有効化する。
8.3 マルチリージョン・組織証跡
Q: 全リージョンのアクティビティを1つの証跡で確実に記録するには?
A: マルチリージョン証跡を作成する(新規リージョンも自動対象)。
Q: Organizations配下の全アカウントのログをメンバーが無効化できない形で集約するには?
A: 組織証跡(Organization Trail)を管理アカウントで作成する。
8.4 ログの整合性・保護
Q: ログが改ざん・削除されていないことを証明するには?
A: ログファイル整合性検証(ダイジェストファイルのハッシュ/署名)を使う。
Q: ログの削除自体を防ぎたい場合は?
A: S3バケットにObject Lock / MFA Delete / 厳格なバケットポリシーを適用する。
8.5 リアルタイム検知・自動化
Q: ルートユーザーのログインやSG変更を即座に検知して通知するには?
A: 証跡をCloudWatch Logsへ送り、メトリクスフィルター + アラーム(SNS)を設定する。
Q: 特定のAPIコールをトリガーに自動修復を実行するには?
A: EventBridgeルールでLambda等のターゲットを起動する。
8.6 保管・分析・コスト
Q: S3とAthenaを自前構築せずに長期保管とSQL分析を行うには?
A: CloudTrail Lakeを使う(最大10年、SQLクエリ可能)。
Q: CloudTrailコストが急増する主因は?
A: データイベント(特にS3/Lambda)の記録量。必要な対象に絞って有効化する。
8.7 関連サービスとの連携
- GuardDuty: CloudTrailを入力に脅威を自動分析する検知サービス。
- AWS Config: 構成変更の追跡。CloudTrail(操作ログ)と併用で原因特定が容易に。
- Athena / CloudTrail Lake: ログのSQL分析・調査。