AWS認定資格 WEB問題集&徹底解説
機械学習エンジニア–アソシエイト
問題文と選択肢
これらの要件を最も効率的に満たすアプローチはどれですか?
- AWS Lake Formationを利用して、Redshiftデータカタログのテーブルに対してカラムレベルの権限を設定し、データサイエンティストには非機密カラムのみへのアクセスを許可する。
- Amazon Redshiftの標準ビューを作成し、機密情報を含むカラムを除外したSELECT文を定義して、データサイエンティストにそのビューへのアクセス権を付与する。
- Amazon Redshiftのダイナミックデータマスキングを実装し、指定されたロールを持つユーザーに対して、PIIを含むカラムのデータを自動的にマスクするように設定する。
- Amazon Redshiftの行レベルセキュリティポリシーを適用し、データサイエンティストがアクセスできるデータ行を制限することで、PIIへのアクセスを防ぐ。
A. AWS Lake Formationを利用して、Redshiftデータカタログのテーブルに対してカラムレベルの権限を設定し、データサイエンティストには非機密カラムのみへのアクセスを許可する。
AWS Lake Formation の列レベル権限が効くのは、AWS Glue データカタログで管理されるテーブル(S3 データレイクや Redshift Spectrum の外部テーブル、データシェア)に対してであり、Redshift 内部テーブルの列を直接マスクする仕組みではありません。本問はデータが Redshift 内に保管されている前提なので、まず土俵が合っていません。
加えて、Lake Formation の列レベル権限は列そのものを見せない(非表示にする)制御であり、「マスクして表示する」という要件に対しても Redshift ネイティブの機能より遠回りで、統合設定のオーバーヘッドも増えます。
B. Amazon Redshiftの標準ビューを作成し、機密情報を含むカラムを除外したSELECT文を定義して、データサイエンティストにそのビューへのアクセス権を付与する。
機密列を除いた標準ビューを作る方法は、確かに元テーブルを物理変更せず ETL も不要ですが、これは「マスク」ではなく「列を見せない」だけです。生年月日を年代だけに丸めるといった、部分的に情報を残したマスキングには対応できません。
さらに、対象テーブルやロールが増えるたびにビューを作り分けて権限を管理する必要があり、「実装と管理のオーバーヘッドを最小限に」という要件に反します。元テーブルへの直接アクセス権が残っていれば PII が露出する点にも注意が必要です。
C. Amazon Redshiftのダイナミックデータマスキングを実装し、指定されたロールを持つユーザーに対して、PIIを含むカラムのデータを自動的にマスクするように設定する。
Amazon Redshift のダイナミックデータマスキング(DDM)は、マスキングポリシーを作成して列とロールに紐付けるだけで、クエリ実行時にそのロールのユーザーへ返す値を動的に変換する機能です。テーブルに格納された実データは一切書き換わらず、データの複製も追加の ETL パイプラインも不要です。
ロールごとに「完全マスク」「部分マスク(末尾 4 桁のみ表示など)」「マスクなし」を出し分けられるため、データサイエンティストには PII をマスクした状態で、監査担当には元の値を、といった制御を1 つのテーブルのまま実現できます。要件をすべて満たす最小構成であり、これが正解です。
D. Amazon Redshiftの行レベルセキュリティポリシーを適用し、データサイエンティストがアクセスできるデータ行を制限することで、PIIへのアクセスを防ぐ。
Amazon Redshift の行レベルセキュリティ(RLS)は、ユーザーやロールに応じて「見える行」を絞り込む機能です。本問の要件は「特定の列に含まれる PII を隠す」ことなので、制御の軸がそもそも違います。
RLS でアクセスを許可された行については、その行のすべての列(PII を含む)がそのまま表示されます。逆に PII を隠そうとして行自体を絞り込めば、疾患トレンド分析に必要なデータまで欠落してしまい、分析要件も満たせません。
Redshift で「列の中身」をロール別に隠す=ダイナミックデータマスキング。行を絞るのは RLS。
正解への思考ルート
問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。| 要件 | 判断ポイント |
|---|---|
| 元の Redshift テーブルのデータ構造や内容を物理的に変更しない | クエリ時に動的に変換して返す方式なら、格納データはそのまま。マスキングポリシーは列とロールに紐付けるだけ →選択肢(C)は候補 |
| データの複製や追加の ETL パイプラインを作らない | マスク済みテーブルを別途作る発想は不可。1 つのテーブルのまま出し分けられる機能を選ぶ →選択肢(C)は候補 |
| PII をマスクまたは隠蔽して表示させない(隠すのは「列」) | 行レベルセキュリティは「行」を絞る機能で、許可された行の列はすべて見えてしまう →選択肢(D)を消す |
| 対象データは Redshift 内部テーブルに保管されている | Lake Formation の列レベル権限は Glue データカタログ経由のテーブルが対象で、Redshift 内部テーブルを直接マスクしない →選択肢(A)を消す |
| 実装と管理のオーバーヘッドを最小限に抑える | ビュー方式はテーブル × ロールの数だけビューと権限が増えるうえ、部分マスクもできない →選択肢(B)を消す。選択肢(C)が正解 |
ひっかけポイント
- 選択肢 B のビューは「元テーブルを変えない・ETL も不要」という条件を満たすため最後まで残りやすい罠。決め手は「マスク(値を変換して見せる)」と「除外(列を見せない)」の違いと、ビュー増殖による管理負荷
- 選択肢 D の行レベルセキュリティは名前が似ていて紛らわしい。RLS=行、DDM=列(の中身)と対で覚える
- 選択肢 A の Lake Formation は「データガバナンスの本命」という印象で選ばせにくる。効く範囲は Glue データカタログ管理下のテーブルで、Redshift 内部テーブルのネイティブなマスキング手段ではない
- 「PII をマスク」と聞いて Amazon Macie(検出)や Glue の PII 変換(加工=新データ生成)を思い浮かべると、「物理変更なし・ETL なし」の条件で必ず外れる
出題バリエーション
同じ知識が本番では条件を変えて出題されます。| 問題文がこう変わったら | 正解はこう変わる |
|---|---|
| 「データサイエンティストに特定の行(例:自分の担当地域)だけを見せたい」 | 行レベルセキュリティ(RLS)が正解に。 |
| 「PII 列をそもそも参照させない(列自体を隠す)だけでよい」 | 列レベルのアクセス権限(GRANT)やビューでも要件を満たせる。 |
| 「対象データが S3 のデータレイクにあり、Athena / Redshift Spectrum から分析する」 | AWS Lake Formation の列レベル・セルレベル権限が正解軸に。 |
| 「保管データ内の PII がどこにあるかをまず特定したい」 | Amazon Macie(S3)や Glue の機密データ検出が正解軸に。 |
これらの要件を最も効率的に満たすアプローチはどれですか?
- AWS Lake Formationを利用して、Redshiftデータカタログのテーブルに対してカラムレベルの権限を設定し、データサイエンティストには非機密カラムのみへのアクセスを許可する。
- Amazon Redshiftの標準ビューを作成し、機密情報を含むカラムを除外したSELECT文を定義して、データサイエンティストにそのビューへのアクセス権を付与する。
- Amazon Redshiftのダイナミックデータマスキングを実装し、指定されたロールを持つユーザーに対して、PIIを含むカラムのデータを自動的にマスクするように設定する。
- Amazon Redshiftの行レベルセキュリティポリシーを適用し、データサイエンティストがアクセスできるデータ行を制限することで、PIIへのアクセスを防ぐ。
次の問題
会員機能
お役立ち情報
- プレミアム会員のご紹介
- 「徹底解説」のご紹介
- 「模擬試験」のご紹介
- 収録問題と試験ガイドの対応
- 会員機能のご紹介
- おすすめの勉強方法
- AWSサービスの解説
- AWS認定資格の種類・対象者・受験料・合格ライン
- スマホのホーム画面に登録する方法
姉妹サイト
- CLF:AWS 認定クラウドプラクティショナー
- SAA:AWS 認定ソリューションアーキテクト-アソシエイト
- AIF:AWS 認定AIプラクティショナー
- SOA:AWS 認定CloudOpsエンジニア-アソシエイト
- DVA:AWS 認定デベロッパー-アソシエイト
- DEA:AWS 認定データエンジニア-アソシエイト
- MLA:AWS 認定機械学習エンジニア-アソシエイト
- SAP:AWS 認定ソリューションアーキテクト-プロフェッショナル
- DOP:AWS 認定DevOpsエンジニア-プロフェッショナル
- AIP:AWS 認定生成AIデベロッパー-プロフェッショナル
- SCS:AWS 認定セキュリティ-専門知識
- AZ-900:Microsoft Azure Fundamentals
- AI-900:Microsoft Azure AI Fundamentals