あるデータエンジニアリングチームは、AWS Glue ETLジョブを使ってAmazon RDS for PostgreSQLからデータを抽出しています。セキュリティチームから以下の要件が提示されました。 ・データベースの認証情報(ユーザー名・パスワード)をコード内にハードコードしてはならない ・認証情報は30日ごとに自動的にローテーションする必要がある ・認証情報のローテーション中もETLジョブを中断させてはならない この要件を最も効果的に満たす方法はどれですか?
AWS Secrets Managerは、RDS認証情報の自動ローテーションをネイティブにサポートしています。デュアルユーザーローテーション戦略では、ローテーション中に旧パスワードと新パスワードの両方が一時的に有効な状態になるため、ETLジョブを中断させることなくローテーションが完了します。GlueジョブはSecretsManagerのAPIを呼び出して実行時に最新の認証情報を取得できます。 選択肢BのSystems Manager パラメータストアは安全な保存には使えますが、RDS認証情報の自動ローテーション機能をネイティブには持たず、ローテーションには追加のLambda実装が必要です。 選択肢CのKMS暗号化S3に保存する方法は自動ローテーション機能を持たず、Lambdaによる別途の仕組みが必要になります。 選択肢DのGlue接続設定への直接設定は自動ローテーション機能がないため30日ごとのローテーション要件を満たしません。