AWS認定資格 WEB問題集&徹底解説

ソリューションアーキテクト – アソシエイト

正解 B問題
要復習(もう一度解きたい問題) 1 2 3 4
合格に向けて、もっと深く学習する
豊富な問題と詳細なAWSサービス解説を、24時間無料でお試しいただけます
プレミアム会員機能を無料で試す ❯
問題文と選択肢
ある金融企業は、5つのAWSアカウントに分散して顧客取引データを保管しています。各アカウントではAWS Lake Formationを使用してデータガバナンスを実施しており、データはAmazon S3に格納されています。新しく組織されたリスク分析部門が、複数アカウントに存在する特定のデータセットに対して読み取り専用のアクセス権を必要としています。この部門は独自のAWSアカウントを保有しており、セキュリティ要件として最小権限の原則を適用する必要があります。運用負荷を最小限に抑えながら、これらの要件を満たすソリューションはどれですか。
  • リスク分析部門のアカウント内にS3バケットを新規作成し、AWS DataSyncを使用して各データ保有アカウントから必要なデータを定期的に同期する。
  • Lake Formationのタグベースアクセス制御(LF-TBAC)を利用し、必要なデータリソースにタグを付与してから、リスク分析部門のアカウントに対してクロスアカウント権限を付与する。
  • 各データ保有アカウントでAWS Glueクローラーを実行してデータカタログを作成し、AWS Resource Access Managerを使用してリスク分析部門とカタログを共有する。
  • データ保有アカウントごとにIAMロールを作成し、リスク分析部門のプリンシパルを信頼ポリシーに追加した上で、各アカウントのS3バケットポリシーで直接アクセスを許可する。
解説 頻出度★★★★★
この問題は、「複数アカウントのデータレイク × きめ細かな読み取り権限 × 最小権限 × 運用負荷最小」の要件で、Lake Formation のタグベースアクセス制御(LF-TBAC)によるクロスアカウント共有を選べるかがポイント

A. リスク分析部門のアカウント内にS3バケットを新規作成し、AWS DataSyncを使用して各データ保有アカウントから必要なデータを定期的に同期する。

AWS DataSync で各アカウントのデータを分析部門のバケットへ複製する案。データの二重持ちによりストレージコストが増え、同期ジョブのスケジュール管理やデータ鮮度の担保という継続的な運用負荷が発生する。
さらに、コピーされたデータは元アカウントの Lake Formation ガバナンスの外に出るため、最小権限・一元的なデータガバナンスに反する

正解

B. Lake Formationのタグベースアクセス制御(LF-TBAC)を利用し、必要なデータリソースにタグを付与してから、リスク分析部門のアカウントに対してクロスアカウント権限を付与する。

Lake Formation のタグベースアクセス制御(LF-TBAC)は、データベース・テーブル・カラムに LF タグを付け、タグに対して権限を付与する方式。リソースが増えても付与済みのタグルールがそのまま効くため、クロスアカウント共有を運用負荷なくスケールできる。
共有先アカウントには必要なデータセットに対する SELECT(読み取り)だけを与えられ、テーブル・カラム・行レベルの絞り込みも可能なので最小権限の原則を満たす。データをコピーせず、元の S3 に置いたまま参照させられる点も要件に合致する。

C. 各データ保有アカウントでAWS Glueクローラーを実行してデータカタログを作成し、AWS Resource Access Managerを使用してリスク分析部門とカタログを共有する。

AWS Glue クローラーでカタログを作るところまでは実務でも行うが、AWS RAM で共有できるのはメタデータ(カタログ)であり、これだけでは実データへのきめ細かなアクセス制御にならない
結局 Lake Formation か IAM/S3 側の権限設計が別途必要になり、5 アカウント分のクローラー運用も残るため、運用負荷最小の要件を満たさない。

D. データ保有アカウントごとにIAMロールを作成し、リスク分析部門のプリンシパルを信頼ポリシーに追加した上で、各アカウントのS3バケットポリシーで直接アクセスを許可する。

アカウントごとに IAM ロールと S3 バケットポリシーを個別に書く案。アカウント数・データセット数が増えるほどポリシーの手動管理が線形に増えるため運用負荷が高い。
また S3 バケット/プレフィックス単位の粗い制御となり、Lake Formation が提供するテーブル・カラム・行単位の制御を活かせず、最小権限の徹底が難しい。

構成図

データ保有アカウント×5(Lake Formation)
   Amazon S3(取引データ) + LFタグ(例: dept=risk)
      │ LF-TBAC でクロスアカウント権限を付与
      ▼
リスク分析部門アカウント ──読み取り専用(コピーなし)──▶ 元の S3 データ
これだけ覚える(記憶フック)
データレイクの複数アカウント共有は LF-TBAC。データをコピーしたら負け、S3 バケットポリシー直書きも負け。
正解への思考ルート 問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。
要件 判断ポイント
5つのAWSアカウントにデータが分散、Lake Formation でガバナンス済み すでに Lake Formation を使っているなら、共有もLake Formation のネイティブ機能で完結させるのが定石
→選択肢(B)は候補
特定データセットへの読み取り専用アクセス/最小権限 LF タグ+SELECT 権限ならテーブル・カラム単位で絞れる。S3 バケットポリシーでは粒度が粗い
→選択肢(D)を消す
運用負荷を最小限に データのコピー(DataSync)やクローラーの個別運用は継続的な運用負荷を生む
→選択肢(A・C)を消す
将来のデータセット追加にも耐えたい タグに権限を紐づける LF-TBAC は、新しいテーブルにタグを付けるだけで共有が効く
→選択肢(B)が正解
ひっかけポイント
  • 「分析用にデータを集約する」は一見自然だが、コピーはコスト・鮮度・ガバナンスの三重苦。Lake Formation 問題では原則コピーしない
  • AWS RAM でのカタログ共有はメタデータの共有にすぎない。実データの権限は Lake Formation / IAM 側で別途必要
  • IAM ロール+S3 バケットポリシーは技術的には可能だが、アカウント数分の手作業が発生し「運用負荷最小」に反する
  • LF-TBAC は「タグに権限を付ける」方式。リソースごとの権限付与(名前ベース)との違いを押さえる
出題バリエーション 同じ知識が本番では条件を変えて出題されます。
問題文がこう変わったら 正解はこう変わる
「共有先は1アカウント・1テーブルのみで、今後増える予定もない」 Lake Formation の名前ベース(リソース単位)のクロスアカウント付与でも十分になる。
「特定のカラム(口座番号など)を隠したい/行を絞りたい」 Lake Formation のカラム/行レベルのデータフィルタが正解軸に。
「アカウントをまたいでデータをカタログ横断で検索・公開したい」 AWS Glue Data Catalog の共有+Lake Formation 権限や DataZone が登場する。
「S3 のプレフィックス単位でアプリに読み取りさせたいだけ」 S3 バケットポリシー+クロスアカウント IAM ロールで足りる(Lake Formation は過剰)。
関連サービスの解説 Amazon Simple Storage Service (Amazon S3)
AWS DataSync
AWS Glue
AWS Identity and Access Management (AWS IAM)
AWS Lake Formation
AWS Resource Access Manager (AWS RAM)
+ 質問 / コメント
解答・解説に疑問がある場合や、よりよい解説がある場合など、お気軽にコメントください。ただし、短文コメントは表示されません。また、中傷などコメントの内容によっては、会員機能を停止させて頂きます。教え学び合える場になれば嬉しいです。(コメント投稿にはログインが必要です)
正答率 57%
No.11 解説
ある金融企業は、5つのAWSアカウントに分散して顧客取引データを保管しています。各アカウントではAWS Lake Formationを使用してデータガバナンスを実施しており、データはAmazon S3に格納されています。新しく組織されたリスク分析部門が、複数アカウントに存在する特定のデータセットに対して読み取り専用のアクセス権を必要としています。この部門は独自のAWSアカウントを保有しており、セキュリティ要件として最小権限の原則を適用する必要があります。運用負荷を最小限に抑えながら、これらの要件を満たすソリューションはどれですか。
  • リスク分析部門のアカウント内にS3バケットを新規作成し、AWS DataSyncを使用して各データ保有アカウントから必要なデータを定期的に同期する。
  • Lake Formationのタグベースアクセス制御(LF-TBAC)を利用し、必要なデータリソースにタグを付与してから、リスク分析部門のアカウントに対してクロスアカウント権限を付与する。
  • 各データ保有アカウントでAWS Glueクローラーを実行してデータカタログを作成し、AWS Resource Access Managerを使用してリスク分析部門とカタログを共有する。
  • データ保有アカウントごとにIAMロールを作成し、リスク分析部門のプリンシパルを信頼ポリシーに追加した上で、各アカウントのS3バケットポリシーで直接アクセスを許可する。

(会員限定)当問題の評価をお願いします。改善に活用します。