無限ノック › SAP 練習問題一覧 › 問題
SAP組織の複雑さに対応する設計

ある多国籍エンタープライズ企業がAWS Organizationsを使用しており、Root配下にProduction OU、Development OU、Sandbox OU、Security OUの4つのOUを持っています。コンプライアンスチームは以下のSCPによる統制を最小のSCP数で実装するよう求めています: (1) Production OUとDevelopment OUのすべてのアカウントで、us-east-1・eu-west-1・ap-northeast-1以外のリージョンへのリソース作成を全サービスで禁止する。 (2) Security OUのアカウントはセキュリティ調査のために任意のリージョンを利用可能にする。 (3) Sandbox OUでは開発者が任意のリージョンを使用できるが、コスト管理のためEC2とRDSの起動のみ上記3リージョンに限定する。 (4) 全組織でAWSアカウントのルートユーザーによるAPIアクション全般をDenyする。 (5) 緊急対応用のBreakGlassRoleは要件(1)(3)の制約から除外する。 上記要件を正しく、かつ最も少ないSCP数で実装する方法はどれですか?

A
3つのSCPを作成する。①全サービスのリージョン制限Deny SCP(aws:RequestedRegionのStringNotEquals条件、BreakGlassRoleをaws:PrincipalARNで除外)を1つ作成し、Production OUとDevelopment OUの両方に同一ポリシーとしてアタッチする。②EC2とRDSのみのリージョン制限Deny SCP(BreakGlassRole除外条件付き)を作成しSandbox OUにアタッチする。③ルートユーザーの全APIアクションをDenyするSCPを作成しRoot組織にアタッチする。Security OUには追加SCPをアタッチしない。
✓ 正解
SCPは1つのポリシーを複数のOUに同時アタッチできるため、Production OUとDevelopment OUへ同一SCPを適用でき、SCP数を削減できます。Security OUへのSCPアタッチは不要で、制限がない状態が要件通りです。
B
4つのSCPを作成する。①全サービスのリージョン制限DenyをRoot組織にアタッチする(BreakGlassRole除外条件付き)。②Sandbox OUにFullAWSAccess SCPを追加アタッチして①の制限を緩和する。③EC2/RDS限定のリージョン制限SCPをSandbox OUにアタッチする。④Security OUに全リージョンを明示的に許可するSCPをアタッチして①のRoot DenyをSecurity OUで上書きする。ルートユーザーDenyは①に統合する。
が誤りである根本的理由はSCPの継承原則にあります。親OUのDeny SCPは子OUのAllow SCPでは上書きできません。Sandbox OUへのFullAWSAccess追加やSecurity OUへのAllow SCPは無効で、Root DenyはSecurity OU・Sandbox OUにも引き続き適用されます。
C
2つのSCPを作成する。①Production OUとDevelopment OUへの全サービスリージョン制限と、Sandbox OUへのEC2/RDS限定リージョン制限を、aws:PrincipalOrgPaths条件でOU別に条件分岐させて1つのSCPに統合し、Root組織にアタッチする(BreakGlassRole除外条件を含む)。②ルートユーザーの全APIをDenyするSCPをRoot組織にアタッチする。Security OUはaws:PrincipalOrgPaths条件に含まれないため自動的に除外される。
Root SCPでaws:PrincipalOrgPaths条件を使う方式では、AWSサービスがサービスプリンシパル(例:ec2.amazonaws.com、lambda.amazonaws.com)として直接APIコールを実行する場合にPrincipalOrgPaths条件が評価されないため、リージョン制限が適用されないセキュリティギャップが生じます。さらに、条件値にOU ID をハードコードする必要があり、OU再作成時のID変更でポリシーが無効化されるリスクもあります。
D
5つのSCPを作成する。①Production OUに全サービスリージョン制限SCPをアタッチ。②Development OUに①と同内容の別SCPを作成してアタッチ(OUごとに個別管理するため)。③Sandbox OUにEC2/RDS限定リージョン制限SCPをアタッチ。④Security OUに全リージョン許可SCPをアタッチ。⑤ルートユーザーDeny SCPをRoot組織にアタッチ。
同一内容のSCPをOUごとに重複作成しており非効率で、同一SCPを複数OUにアタッチすれば1つに削減できます。

解説

正解: 3つのSCPを作成する。 ①全サービスのリージョン制限Deny SCP(aws:RequestedRegionのStringNotEquals条件、BreakGlassRoleをaws:PrincipalARNで除外)を1つ作成し、Production OUとDevelopment OUの両方に同一ポリシーとしてアタッチする。 ②EC2とRDSのみのリージョン制限Deny SCP(BreakGlassRole除外条件付き)を作成しSandbox OUにアタッチする。 ③ルートユーザーの全APIアクションをDenyするSCPを作成しRoot組織にアタッチする。Security OUには追加SCPをアタッチしない。 選択肢Aは、SCPの複数OU同時アタッチを活用して最小SCP数(3つ)で全要件を実装できます。Production OUとDevelopment OUに同一SCPをアタッチし、Security OUはSCPなし(制限なし)、Sandbox OUはEC2/RDS限定の制限SCPを適用することで、すべての要件を過不足なく満たします。 選択肢Bが誤りである根本的理由はSCPの継承原則にあります。親OUのDeny SCPは子OUのAllow SCPでは上書きできません。Sandbox OUへのFullAWSAccess追加やSecurity OUへのAllow SCPは無効で、Root DenyはSecurity OU・Sandbox OUにも引き続き適用されます。 選択肢CのRoot SCPでaws:PrincipalOrgPaths条件を使う方式では、AWSサービスがサービスプリンシパル(例:ec2.amazonaws.com、lambda.amazonaws.com)として直接APIコールを実行する場合にPrincipalOrgPaths条件が評価されないため、リージョン制限が適用されないセキュリティギャップが生じます。さらに、条件値にOU IDをハードコードする必要があり、OU再作成時のID変更でポリシーが無効化されるリスクもあります。 選択肢Dは同一内容のSCPをOUごとに重複作成しており非効率で、同一SCPを複数OUにアタッチすれば1つに削減できます。

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

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

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