Q97 — AWS SCS-C02 第1章
第 97/100 問 | ← 第1章
セキュリティエンジニアが、AWS CloudFormationテンプレートの脆弱性を確認しています。その結果、アプリケーションのAPIキーを平文で露出するデフォルト値を持つパラメータを発見しました。このパラメータはテンプレート全体で複数回参照されています。セキュリティエンジニアは、テンプレート内での値参照機能を維持しつつ、このパラメータを置き換える必要があります。 これらの要件を、最も安全な方法で満たす解決策はどれですか?
- A. APIキーの値をAWS Systems Manager Parameter StoreのSecureStringパラメータとして保存します。テンプレート内で、値へのすべての参照を{{resolve:ssm:MySSMParameterName:1}}に置き換えます。
- B. APIキーの値をAWS Secrets Managerに保存します。テンプレート内で、値へのすべての参照を{{resolve:secretsmanager:MySecretId:SecretString}}に置き換えます。 ✓
- C. APIキーの値をAmazon DynamoDBに保存します。テンプレート内で、値へのすべての参照を{{resolve:dynamodb:MyTableName:MyPrimaryKey}}に置き換えます。
- D. APIキーの値を新しいAmazon S3バケットに保存します。テンプレート内で、値へのすべての参照を{{resolve:s3:MyBucketName:MyObjectName}}に置き換えます。
正解: B. APIキーの値をAWS Secrets Managerに保存します。テンプレート内で、値へのすべての参照を{{resolve:secretsmanager:MySecretId:SecretString}}に置き換えます。
解説
AWS Secrets Managerは、APIキーなどの機密情報を保存・管理するために設計されたサービスであり、自動的なキーのローテーション、細かい権限制御、暗号化されたストレージ機能を提供します。CloudFormationテンプレートからSecrets Manager内のシークレットを直接参照するには、{{resolve:secretsmanager:MySecretId:SecretString}}という構文を使用することで、平文による露出リスクを排除しつつ、テンプレート内でのパラメータ参照の柔軟性と保守性を維持できます。