Q29 — AWS SAP-C02 第2章

第 29/75 問 | ← 第2章

Q179. ある企業が、Amazon RDS for PostgreSQLデータベースにアクセスするAWS Lambda関数を展開しようとしています。この企業は、Lambda関数をQA環境および本番環境で起動する必要があります。また、アプリケーションコード内に認証情報を露出してはならず、パスワードの自動ローテーションも必須です。 これらの要件を満たす解決策はどれですか?

正解: B. 両環境(QAおよび本番)のデータベース認証情報を、AWS Secrets Managerに格納します。QA環境と本番環境それぞれに個別のシークレット(キー)を作成し、自動ローテーションを有効化します。Lambda関数の環境変数として、Secrets Managerのシークレットを参照するように設定します。

解説

この解決策では、QA環境および本番環境のデータベース認証情報をAWS Secrets Managerに格納します。Secrets Managerは、パスワードなどのシークレットを安全かつスケーラブルに管理するためのサービスであり、自動パスワードローテーション機能を有効化することで、要件である「自動的なパスワードローテーション」を満たします。また、環境ごとに個別のシークレットを定義することで、認証情報の分離が可能です。Lambda関数は、環境変数経由でSecrets Managerのシークレットを参照するため、アプリケーションコード内に認証情報が露出することはありません。さらに、今後Lambda関数や環境が追加された場合にも、このアプローチは管理・拡張が容易であり、複数のサービスにまたがるシークレット管理を簡素化します。