AWS Organizations / RCP(Resource Control Policy)難易度 高無料
ある組織では、外部の取引先アカウントから招待されたリソース共有(クロスアカウントのS3バケットポリシーやIAMロール信頼ポリシー)によって、意図せず組織外のプリンシパルに機密データへのアクセスが許可されてしまうインシデントを懸念している。「組織内の全アカウントのリソース(S3バケット等)に対して、リソースベースポリシーで組織外プリンシパルへのアクセスを許可する記述があっても、それを組織レベルで一律に無効化したい」という要件がある。この要件に最も適した機能を選べ。(単一選択)
- A組織のルート/OUにRCP(リソースコントロールポリシー)をアタッチし、対象リソースのリソースベースポリシーが組織外プリンシパルへ許可を出していても、組織内アカウントプリンシパル以外へのアクセスを実効的に無効化するよう制限する
- B組織のルート/OUに、
Resource: "*"の全リソースに対してあらゆるアクションをDenyするSCPをアタッチし、これによりリソースベースポリシーが組織外に開いている状態を無効化する - C全アカウントのS3バケットにIAM Access Analyzerを設定し、外部共有を検知したら都度手動でバケットポリシーを修正する運用にする
- D組織内の全アカウントでS3バケットのパブリックアクセスブロック設定を有効化することで、組織外プリンシパルへのアクセスも含め一律に無効化する
正解・解説・誤答理由・ひっかけを見る▼ open
✓ 正解:AAI作成・独立検証済
解説
SCPはプリンシパル側(呼び出し元)の実効権限の上限を定めるものであり、リソース側(S3バケット等)のリソースベースポリシーが 組織外プリンシパルへ許可を出すこと自体を制限する機能ではない。この種の「リソース側からの意図しない外部共有」を組織レベルで抑止するために AWSが提供するのがRCP(Resource Control Policy/リソースコントロールポリシー)である。
- RCPはSCPと対になる仕組みで、組織内のリソース(S3、STS等の対応サービス)に対するリソースベースポリシーの実効的な許可範囲に上限を課す。
- 例えば「組織のアカウントID以外のプリンシパルへの許可は、リソースベースポリシーにいくら書かれていても無効にする」というRCPを 組織のルートやOUにアタッチすることで、S3バケットポリシーやIAMロールの信頼ポリシーが誤って組織外に開いていても、 実際のアクセスは組織内プリンシパルに限定される。
- SCPだけでは「呼び出し元がそのアクションを呼べるか」しか制御できず、「リソース側が誰を許可しているか」というリソースベースポリシー由来の アクセス経路を組織レベルで塞ぐことはできない。
- BSCPは呼び出し元プリンシパルの権限上限を定めるものであり、外部アカウントのプリンシパルが持つ権限自体には作用しない(外部アカウントは当該組織のSCP適用対象外)。リソースベースポリシー由来のアクセス経路は塞げない。
- CAccess Analyzerは検知(ディテクティブ)の仕組みであり、検知後に手動修正が必要なため「一律に無効化」という予防的・自動的な要件を満たさない。
- Dパブリックアクセスブロックは「パブリック(全世界公開)」アクセスを防ぐ機能であり、特定の組織外アカウント(プリンシパル指定)へのクロスアカウント許可までは制御対象にしていない。
ひっかけ: 「SCPを使えばリソースベースポリシー経由のアクセスも制御できる(誤答の1つ)」という混同が本問の核心的な罠。
SCP=呼び出し元プリンシパルの上限/RCP=リソース側が許可できる範囲の上限という役割分担を区別できるかが問われる
(RCPはSAP-C02の新しめの出題範囲であり見落としやすい)。
AIが作成し、独立した検証を経た解説です(有資格者による監修は経ていません)