本文へスキップ
BecomeCoder

AWS SAP(ソリューションアーキテクト プロフェッショナル)コース · 第2章 マルチアカウント統治とガバナンス · レッスン10

ログとセキュリティの集約

導入

アカウントが増えるほど、「どこで誰が何をしたか」を全アカウント横断で追跡できないと、セキュリティ監査が破綻します。ログとセキュリティ設定を、組織全体で1箇所に集約する仕組みを見ていきましょう。

説明

組織の証跡(Organization Trail) は、AWS CloudTrail を管理アカウントで作成する際に「組織全体に適用」を選ぶことで、全メンバーアカウントの操作ログを自動的に、1つのS3バケットへ集約する機能です。メンバーアカウント側では、このトレイルを無効化・削除できません。

同様に AWS Config aggregator(集約機能) を使うと、全アカウント・全リージョンのリソース構成情報とルール準拠状況を、1つのアカウントから横断的に確認できます。

これらのログの置き場所として、専用の ログアーカイブアカウント を用意するのがベストプラクティスです(Control Tower でも自動作成されるアカウントです)。

集約先アカウント役割
ログアーカイブアカウントCloudTrail・Config・VPC Flow Logs など、生ログの保管専用。他アカウントからは書き込みのみ・削除不可に制限
セキュリティ監査(委任管理者)アカウントGuardDuty・Security Hub・Macie などの検知結果を横断的に確認する専用アカウント

委任管理者(Delegated Administrator) という仕組みを使うと、GuardDuty・Security Hub・Macie・IAM Access Analyzer などの管理を、管理アカウント自身ではなく専用のセキュリティアカウントに委任できます。これにより「日常のセキュリティ運用担当者に、組織の管理アカウントそのものへの強い権限は渡さない」という最小権限が実現できます。

flowchart TD
    A1["アカウントA"] -->|"CloudTrail/Config"| LOG["ログアーカイブ<br/>アカウント"]
    A2["アカウントB"] -->|"CloudTrail/Config"| LOG
    A3["アカウントC"] -->|"CloudTrail/Config"| LOG
    A1 -->|"検知結果"| SEC["セキュリティ委任管理者<br/>アカウント(GuardDuty/Security Hub)"]
    A2 -->|"検知結果"| SEC
    A3 -->|"検知結果"| SEC

具体例

内部犯行に備える設計を考えます。あるメンバーアカウントの管理者が悪意を持ったとして、「自分の不正操作の証跡を消せてしまう」なら監査は無意味です。

弱い設計:各アカウントが自分でCloudTrailを作り、自分のS3にログを保存。→ その管理者は自分のトレイルを止め、S3のログを削除できてしまう。証拠隠滅が可能。

正しい設計(組織の証跡+集約):

  • 管理アカウントで組織の証跡(Organization Trail)を作り、全メンバーの操作ログを自動で1箇所に集める。メンバー側はこのトレイルを無効化・削除できない。
  • 集約先は専用のログアーカイブアカウント。他アカウントからは書き込みのみ・削除不可に制限。ワークロードが動く場所とログの保管場所を分離する。
  • さらにGuardDuty/Security Hubの検知は、委任管理者の仕組みで専用のセキュリティアカウントに委任し、日常の運用担当に管理アカウントの強い権限を渡さない(最小権限)。

これで「操作した本人が証跡を消す」ことが構造的に不可能になります。SAPで「証跡を消せないようにしたい」と来たら、答えは組織の証跡+ログアーカイブ専用アカウントへの集約です。

読んでみよう

SAPでは「あるメンバーアカウントの管理者が、自分の不正操作の証跡を消せないようにしたい」という問題がよく出ます。答えは「組織の証跡として作成し、ログアーカイブ専用アカウントに集約する」ことです。ログの保管場所と、実際にワークロードが動く場所を分離するのが鉄則だと覚えてください。

次のレッスンへ →