無限ノック › DEA 練習問題一覧 › 問題
DEAデータのセキュリティとガバナンス

ある企業のデータエンジニアリングチームは、AWS Glue ETL ジョブから Amazon RDS for MySQL に接続しています。セキュリティ要件として、データベース認証情報を 30 日ごとに自動でローテーションし、Glue ジョブのコードを変更せずに常に最新の認証情報を参照できる構成が求められています。最も適切な実装はどれですか?

A
AWS Systems Manager Parameter Store の SecureString パラメータに認証情報を保存し、30 日ごとに EventBridge スケジュールと Lambda 関数の組み合わせで自動更新して Glue ジョブに環境変数として渡す
Parameter Store は SecureString による暗号化保存は可能ですが、ネイティブの自動ローテーション機能がなく EventBridge + Lambda による自動更新の仕組みを別途構築する必要があるため、運用負荷が増加します。
B
AWS Secrets Manager に認証情報を保存して Amazon RDS 向けの自動ローテーションを有効化し、Glue ジョブの接続設定で Secrets Manager の ARN を参照するよう構成する
✓ 正解
AWS Secrets Manager は RDS とのネイティブ統合で自動ローテーションを有効化でき、Glue の接続設定で ARN を直接参照できるためコード変更なしに常に最新の認証情報を使用できます。30 日ローテーション要件を満たす最適な構成です。
C
AWS KMS カスタマーマネージドキーで暗号化した認証情報ファイルを Amazon S3 に配置し、Glue ETL スクリプト内で boto3 を使用して起動時に認証情報を復号・取得する
S3 + KMS による認証情報管理は暗号化保存はできますが、ETL スクリプト内に取得ロジックを埋め込む必要があり、コード変更なしで最新情報を参照するという要件を満たしません。
D
Amazon RDS の IAM データベース認証を有効化し、Glue ジョブに割り当てた IAM ロールが短期トークンでデータベースに接続することでパスワード管理を不要にする
IAM データベース認証はパスワード不要のアクセスを実現しますが、AWS Glue からの利用には制限があり、すべての RDS エンジンバージョンで完全にサポートされているわけではないため汎用的な解決策とはなりません。

解説

AWS Secrets Manager は認証情報の安全な保存・管理・自動ローテーションを専門とするサービスです。Amazon RDS との統合では、マネージドな Lambda ローテーション関数によってパスワードを定期的に自動更新できます。AWS Glue はネイティブの接続設定で Secrets Manager の ARN を直接参照する機能を持っており、ジョブ実行時に最新の認証情報を自動取得するためコード変更は不要です。30 日ごとの自動ローテーション要件を最小の運用負荷で満たせる構成です。 選択肢AのAWS Systems Manager Parameter Storeは SecureString での暗号化保存は可能ですが、ネイティブの自動ローテーション機能がなく、EventBridge + Lambda による自動化を別途構築する必要があり運用コストが増加します。 選択肢CのAmazon S3 + KMS による認証情報管理は暗号化は実現できますが、boto3 を使った取得ロジックをジョブコードに組み込む必要があり、コード変更なしで最新情報を参照するという要件を満たしません。 選択肢DのAmazon RDS の IAM データベース認証は永続的なパスワードを不要にする有効な手法ですが、AWS Glue からの利用には制限があり、すべての RDS エンジンバージョンやドライバで完全にサポートされているわけではありません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDEAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DEA の問題一覧に戻る