無限ノック › SOA 練習問題一覧 › 問題
SOAデプロイ、プロビジョニング、および自動化

ある企業は CloudFormation を使用して本番環境の RDS データベース・ALB・EC2 Auto Scaling グループを 1 つのスタックで管理しています。以前のスタック更新時に担当者が誤ってパラメータを変更し、RDS インスタンスが置換(削除→再作成)されてデータが失われる事故が発生しました。今後は RDS インスタンスへの更新・削除・置換をすべてブロックしつつ、他のリソース(EC2 Auto Scaling グループ・ALB など)は引き続き更新できるようにしたいと考えています。最も適切な対策はどれですか?

A
RDS リソース定義に DeletionPolicy: Retain を設定する
RDS リソース定義に DeletionPolicy: Retain を設定する方法は、スタック削除またはリソース置換が発生した際に物理リソースを残す設定であり、スタック更新による変更実行そのものは防げません。
B
CloudFormation スタックポリシーを定義し、RDS リソースに対する Update:* アクションを Deny にする
✓ 正解
CloudFormation スタックポリシーは JSON 形式のポリシーで、スタック更新時に特定リソースへの変更アクション(Update:Modify・Update:Replace・Update:Delete を包含する Update:*)を Allow/Deny で制御できます。デフォルト全許可をベースに RDS の論理リソース ID だけを Deny にすることで、他リソースの更新は維持しながら RDS のみを保護できます。
C
RDS リソース定義に UpdateReplacePolicy: Retain を設定する
RDS リソース定義に UpdateReplacePolicy: Retain を設定する方法は、置換時に旧リソースを保持する設定ですが、置換・変更の実行自体を阻止するものではありません。
D
AWS Config ルールと自動修復アクションを使用して、RDS への変更を検知・ロールバックする
AWS Config ルールと自動修復アクションを使用する方法は、変更後の検知・修正であり、スタック更新をリアルタイムにブロックする用途には適しません。

解説

CloudFormation スタックポリシーは JSON 形式のポリシーで、スタック更新時に特定リソースへの変更アクション(Update:Modify・Update:Replace・Update:Delete を包含する Update:*)を Allow/Deny で制御できます。デフォルト全許可をベースに RDS の論理リソース ID だけを Deny にすることで、他リソースの更新は維持しながら RDS のみを保護できます。 選択肢A の RDS リソース定義に DeletionPolicy: Retain を設定する方法は、スタック削除またはリソース置換が発生した際に物理リソースを残す設定であり、スタック更新による変更実行そのものは防げません。 選択肢C の RDS リソース定義に UpdateReplacePolicy: Retain を設定する方法は、置換時に旧リソースを保持する設定ですが、置換・変更の実行自体を阻止するものではありません。 選択肢D の AWS Config ルールと自動修復アクションを使用する方法は、変更後の検知・修正であり、スタック更新をリアルタイムにブロックする用途には適しません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSOAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SOA の問題一覧に戻る