AI作成・独立検証済(有資格者監修なし)SOA-C02 対応
CloudWatch Logs保持設定難易度 標準無料

コスト監査の結果、社内の多数のCloudWatch Logsロググループが「失効しない(Never Expire)」設定のまま無期限に保持され、ストレージコストが増加し続けていることが判明した。今後新規作成されるロググループも含めて、組織のガバナンス方針である「保持期間90日」を継続的に強制したい。最も運用負荷が低い設計を選べ。(単一選択)

  1. AAWS Configのカスタムルールで「保持期間が90日でないロググループ(失効しない設定のものを含む)」を非準拠と判定させ、検出したら自動的にSSM Automationランブック(logs:PutRetentionPolicy)で保持期間を90日に是正する自動修復を設定する
  2. B現時点で存在する全ロググループに対して、一度だけCLIスクリプトで put-retention-policy を実行し保持期間を90日に統一する
  3. CIAM SCPで logs:PutRetentionPolicy の呼び出し自体を全アカウントで禁止し、保持期間の変更ができないようにする
  4. D各アプリケーションチームに、ロググループ作成時は必ず保持期間90日を手動で選択するよう社内Wikiで周知する
正解・解説・誤答理由・ひっかけを見る▼ open
✓ 正解:AAI作成・独立検証済

解説

CloudWatch Logsのロググループは、デフォルトでは「失効しない(無期限保持)」であり、明示的に保持期間(PutRetentionPolicy)を 設定しない限りコストが積み上がり続ける。既存分の是正だけでなく今後の新規作成分にも継続的に規約を適用するには、単発のスクリプト実行では不十分である。

  • AWS Configのカスタムルール(Guardで書くカスタムポリシールール、またはLambdaのカスタムルール)で 「保持期間が90日でないロググループ」=「失効しない(Never Expire)」のものも含めて非準拠と判定させると、 今後作成される分も含めて継続的に検出できる。
  • さらに自動修復(remediation)としてSSM Automationランブックlogs:PutRetentionPolicyを呼び出す)を紐づければ、 非準拠を検知するたびに自動で保持期間90日へ是正され、新規作成分にも継続的に効く運用が実現する。
  • ⚠️ここでAWS Configの管理ルール cw-loggroup-retention-period-check は使えない。 このルールは「保持期間が MinRetentionTime(既定365日)未満なら非準拠」という 最低保持期間を保証する向きの判定であり、公式ドキュメントに 「保持設定が『失効しない(Never expire)』のロググループはCOMPLIANTと判定される」と明記されている。 つまり本問の非準拠(Never Expire群)を1件も検出できない。
  • 単発のCLIスクリプトによる一括設定は既存分の是正にはなるが、継続的なガバナンス(今後作られるロググループへの適用)を担保できない
各誤答が違う理由
  • B既存分は是正できるが一過性の対応であり、翌日以降に新規作成されるロググループには適用されない。継続的なガバナンスを担保できない。
  • C呼び出しを禁止すると誰も保持期間を90日に是正できなくなり、逆に「Never Expire」の既定設定のまま固定化されてしまう。目的(90日への是正)と手段が逆。
  • D手動運用は徹底されず抜け漏れが発生しやすい。「継続的に強制する」という要件には、機械的な検知・自動修復の仕組みが必要。
ひっかけ: 「一度スクリプトで全ロググループの保持期間を90日に設定すれば完了(B)」という発想はその場限りの是正にとどまり、 翌日以降に新規作成されるロググループには効かない。継続的なガバナンス=検知(AWS Config)+自動修復(SSM Automation)という組み合わせが本問の狙い。 あわせて「管理ルール cw-loggroup-retention-period-check を有効化すれば済む」という思い込みも罠である。 このルールは短すぎる保持期間を検出する向きの判定で、「失効しない(Never expire)」のロググループはCOMPLIANT扱いになるため、 本問のケースを1件も拾えない。管理ルールで足りないときはカスタムルールを書く。
AIが作成し、独立した検証を経た解説です(有資格者による監修は経ていません)
この分野をもっと解いて、得点源に
ログ・監査 を含む問題を分野別に演習できます。
演習する →