ある企業は外部IdP(OIDC/SAML)と統合した IAM Identity Center を利用し、複数の AWS アカウントで数百人のエンジニアを管理しています。要件は次の通りです。 ①エンジニアは自分の所属部門タグが付いた EC2 インスタンスのみ操作できる、 ②部門は外部IdPの「department」属性で決まり頻繁に増減する、 ③部門追加のたびに新しいポリシーや許可セットを作成する運用は避ける。最小の運用負荷でこの最小権限を実現する構成はどれですか。
IAM Identity Center の ABAC(属性ベースのアクセスコントロール)を使うと、外部IdPのユーザー属性(department)をフェデレーション時にセッションタグとして渡し、aws:PrincipalTag として参照できます。 許可セットのポリシーを「aws:PrincipalTag/department と既存リソースの aws:ResourceTag/department が一致する場合のみ許可」と書けば、ポリシーは1つで済み、部門が増えても属性値が増えるだけでポリシー改修が不要です。これが運用負荷最小かつ最小権限を満たす唯一の構成です。 選択肢Bの構成は条件キーが誤りで、aws:RequestTag はタグ作成・付与リクエスト時にしか評価されず、既存リソースへのアクセス制御には使えないため EC2 の操作制御が機能しません。 選択肢Cの構成は部門追加のたびに許可セットとポリシーを増産する必要があり、要件③(運用回避)に反します。 選択肢Dの構成はフェデレーションユーザーではなくIAMユーザーを前提としており、数百人分のユーザー管理が発生し IAM Identity Center 統合の前提とも矛盾します。