無限ノック › SAP 練習問題一覧 › 問題
SAP新しいソリューションのための設計

金融サービス企業が、Amazon Aurora MySQLデータベースクラスターに接続するAWS Lambda関数を実装しています。これらのLambda関数は、テスト用の開発環境と本番環境の両方で使用されます。企業の優先事項は、データベース認証情報をLambda関数内にハードコードしないこと、およびパスワードの自動ローテーションの仕組みを導入することです。これらの要件を満たすソリューションはどれですか?

A
開発環境と本番環境それぞれに別のAmazon S3バケットを作成する。両バケットにAWS KMSキーを使用したサーバーサイド暗号化(SSE-KMS)を有効化する。Lambda関数が環境に応じて適切な認証情報を動的に取得できるファイル命名規則を実装する。Lambda関数の実行ロールに対して各S3バケットへのアクセス権限を付与する。
S3は認証情報管理に特化したサービスではなく、自動ローテーション機能を持ちません。ファイルとして保存する設計はセキュリティ上も好ましくありません。
B
AWS Secrets Managerを使用してデータベース認証情報を管理し、開発環境と本番環境に別々のシークレットキーを作成する。シークレットの自動ローテーションを有効化する。Secrets ManagerのシークレットARNを環境変数を通じてLambda関数に渡す。Lambda関数にシークレットへのアクセス権限を持つ適切なIAMロールを割り当てる。
✓ 正解
AWS Secrets ManagerはAurora MySQLとのネイティブ統合による自動パスワードローテーションをサポートしており、ハードコードを避けつつ認証情報を安全に管理できます。環境変数でARNを渡すことで、開発・本番の切り替えも容易です。要件の両方を完全に満たす唯一の選択肢です。
C
両環境のデータベース認証情報をAWS KMSに保存し、自動キーローテーションを有効化する。Lambda関数の環境変数を使用してAWS KMSに保存された認証情報を参照する。Lambda関数にAWS KMSへのアクセス権限を持つ適切なIAMロールを割り当てる。
KMSは暗号化キーを管理するサービスであり、認証情報そのものを保存する用途では使用できません。KMSの自動キーローテーションはデータ暗号化キーのローテーションであり、DBパスワードのローテーションとは異なります。
D
AWS Systems Manager Parameter Storeを使用して、開発環境と本番環境のデータベース認証情報を管理する。AWS KMSキーを使用してこれらの認証情報を暗号化する。AWS SDK for JavaScriptを使用してParameter Storeから認証情報を取得するようLambda関数のコードを修正する。Lambda関数にParameter Storeへのアクセス権限を持つ適切なIAMロールを割り当てる。
Parameter StoreはKMSによる暗号化は可能ですが、DBパスワードの自動ローテーション機能をネイティブにサポートしていません。ローテーションには別途Lambda関数の自作が必要となり、要件を満たせません。

解説

AWS Secrets ManagerはAurora MySQLとのネイティブ統合による自動パスワードローテーションをサポートしており、ハードコードを避けつつ認証情報を安全に管理できます。環境変数でARNを渡すことで、開発・本番の切り替えも容易です。要件の両方を完全に満たす唯一の選択肢です。 選択肢AのS3は認証情報管理に特化したサービスではなく、自動ローテーション機能を持ちません。ファイルとして保存する設計はセキュリティ上も好ましくありません。 選択肢CのKMSは暗号化キーを管理するサービスであり、認証情報そのものを保存する用途では使用できません。KMSの自動キーローテーションはデータ暗号化キーのローテーションであり、DBパスワードのローテーションとは異なります。 選択肢DのParameter StoreはKMSによる暗号化は可能ですが、DBパスワードの自動ローテーション機能をネイティブにサポートしていません。ローテーションには別途Lambda関数の自作が必要となり、要件を満たせません。

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

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

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