Q64 — AWS DVA-C02 第2章
第 64/100 問 | ← 第2章
ある会社が、Amazon OpenSearch Serviceを用いて監査監視システムを実装しています。開発者は、OpenSearch Serviceドメインの設定を行うために、AWS Lambda関数と関連付けられたAWS CloudFormationカスタムリソースを作成する必要があります。Lambda関数は、OpenSearch ServiceドメインへのアクセスにOpenSearch Serviceのマスターユーザー資格情報を使用する必要があります。これらの資格情報をLambda関数に安全に渡すための最も安全な方法は何ですか?
- A. CloudFormationパラメータを使用して、デプロイ時にマスターユーザー資格情報をOpenSearch ServiceドメインのMasterUserOptionsおよびLambda関数の環境変数に渡します。NoEcho属性をtrueに設定します。
- B. CloudFormationパラメータを使用して、デプロイ時にマスターユーザー資格情報をOpenSearch ServiceドメインのMasterUserOptionsに渡し、AWS Systems Manager Parameter Storeにパラメータを作成します。NoEcho属性をtrueに設定します。ssm:GetParameter権限を持つIAMロールを作成し、それをLambda関数に割り当てます。パラメータ名をLambda関数の環境変数として保存します。実行時にパラメータの値を解決します。
- C. CloudFormationパラメータを使用して、デプロイ時にマスターユーザー資格情報をOpenSearch ServiceドメインのMasterUserOptionsおよびLambda関数の環境変数に渡します。AWS Key Management Service (AWS KMS)のencryptコマンドを使用してパラメータの値を暗号化します。
- D. CloudFormationを使用してAWS Secrets Managerシークレットを作成します。CloudFormationの動的参照機能を用いて、OpenSearch ServiceドメインのMasterUserOptionsに使用するシークレットの値を取得します。secretsmanager:GetSecretValue権限を持つIAMロールを作成し、それをLambda関数に割り当てます。シークレット名をLambda関数の環境変数として保存します。実行時にシークレットの値を解決します。 ✓
正解: D. CloudFormationを使用してAWS Secrets Managerシークレットを作成します。CloudFormationの動的参照機能を用いて、OpenSearch ServiceドメインのMasterUserOptionsに使用するシークレットの値を取得します。secretsmanager:GetSecretValue権限を持つIAMロールを作成し、それをLambda関数に割り当てます。シークレット名をLambda関数の環境変数として保存します。実行時にシークレットの値を解決します。
解説
選択肢Dでは、AWS Secrets Managerを使用してシークレットを作成し、CloudFormationの動的参照でその値を取得してOpenSearch ServiceドメインのMasterUserOptionsに適用します。また、secretsmanager:GetSecretValue権限を持つIAMロールをLambda関数に割り当て、シークレット名を環境変数として保持し、実行時に値を解決します。これにより、資格情報がCloudFormationテンプレート内に平文で保存されるのを防ぎ、セキュアかつ管理可能なシークレット管理が実現されます。他の選択肢(A、B、C)はいずれもパラメータによる資格情報の渡し方を採用していますが、Dはより安全で運用性の高いソリューションです。 【灯笼考证提供:swufelp1999】