DEAデータのセキュリティとガバナンス
ある企業は数百の Amazon S3 バケットを保有しており、各バケットには 'confidential'、'internal'、'public' のいずれかの classification タグが付けられています。セキュリティチームは、新しいバケットが追加されるたびに IAM ポリシーを手動更新することなく、タグ値に応じた適切なアクセス制御が自動的に適用されるようにしたいと考えています。最も適切な実装方法はどれですか?
AAWS Config ルールで S3 バケットの classification タグを継続的に監視し、新規バケット作成を検知するたびに Amazon EventBridge トリガーの Lambda 関数でバケットポリシーを自動的に付与する
AWS Config + Lambda によるバケットポリシー自動付与は実現可能ですが、ポリシー適用までのタイムラグや Lambda 管理コストが発生します。ABAC の方がポリシー変更なしで即時に自動適用できるためより適切です。
BIAM ポリシーの Condition に aws:ResourceTag 条件キーを使用した ABAC(属性ベースアクセス制御)を実装し、classification タグの値に応じたアクセス許可を一度定義することで新規バケットにも自動で適切な制御を適用する
✓ 正解
ABAC では aws:ResourceTag 条件キーにより、タグ値に応じたアクセスルールを IAM ポリシーに一度定義するだけで新規バケットにも自動適用されます。手動更新なしにスケーラブルなアクセス制御を実現できる最適な手法です。
CAWS Organizations のサービスコントロールポリシー(SCP)で S3 へのすべてのアクセスをデフォルト拒否とし、所定の classification タグを持つバケットへのアクセスに限り許可する例外ステートメントを追加する
SCP はアカウント全体のガードレールとして有用ですが、タグ値ごとに読み取り・書き込み・管理者権限などを細粒度で使い分ける柔軟なアクセス制御には不向きで、要件の細粒度制御を実現しにくいです。
DAmazon Macie で全 S3 バケットのデータを自動スキャン・分類し、検出結果を AWS Security Hub に集約してセキュリティチームが毎日確認した上で IAM ポリシーを手動更新するフローを構築する
Amazon Macie は機密データの検出・分類ツールであり IAM アクセス制御を直接管理する機能を持ちません。毎日の手動確認と更新フローでは自動化という要件を満たさず、新規バケット追加時のリアルタイム対応もできません。
解説
ABAC(Attribute-Based Access Control)は、IAM ポリシーの Condition 要素に aws:ResourceTag 条件キーを使用して、リソースのタグ値に基づいてアクセスを動的に制御する設計パターンです。例えば classification タグが confidential のバケットには特定の IAM グループのみアクセス可能、public には全員がアクセス可能といったルールを IAM ポリシーに一度定義すれば、新しいバケットに適切なタグを付与するだけで自動的にアクセス制御が適用されます。IAM ポリシー自体を変更する必要がなく、スケーラブルかつ即時反映される制御が実現できます。
選択肢AのAWS Config + EventBridge + Lambda によるバケットポリシーの自動適用は機能しますが、新規バケット作成からポリシー付与までのタイムラグが生じる可能性があり、Lambda 関数の管理コストも発生します。ABAC のほうがシンプルで即時性があります。
選択肢CのAWS Organizations の SCP はアカウント全体のガードレールとして有効ですが、タグ値ごとに細粒度で異なるアクセスレベルを定義することには不向きで、柔軟な制御が困難です。
選択肢DのAmazon Macie はデータの機密性を自動検出・分類するツールですが、IAM アクセス制御を直接管理する機能はなく、毎日の手動更新フローでは自動化という要件を満たしません。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでDEAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →