Q37 — AWS DOP-C02 第1章
第 37/100 問 | ← 第1章
ある企業が、金字塔型アプリケーションコードをAWS CodeCommitに格納しています。同社はAWS CodePipelineを用いてアプリケーションをデプロイしています。コードコミットリポジトリおよびコードパイプラインは、同一のAWSアカウントにデプロイされています。 同社のセキュリティチームは、コードが本番環境にデプロイされる前に、すべてのコードを脆弱性スキャンし、問題を検出することを要求しています。脆弱性が検出された場合、デプロイは停止しなければなりません。
- A. 新しいCodeBuildプロジェクトを作成します。このプロジェクトを、Amazon CodeGuru Securityを用いたセキュリティスキャンを実行するように構成します。CodeGuru Securityが脆弱性を検出した場合にエラーを発生させるようにCodeBuildプロジェクトを構成します。CodeGuru Securityスキャンを実行するのに十分な権限を持つ新しいIAMロールを作成し、CodeBuildプロジェクトに割り当てます。パイプラインに、デプロイ段階の前に新しい段階を追加します。この新しい段階のアクションプロバイダーとしてAWS CodeBuildを選択し、CodeCommitリポジトリからのソースアーティファクトを使用します。この段階の操作を、CodeBuildプロジェクトを使用するように構成します。 ✓
- B. 新しいCodeBuildプロジェクトを作成します。このプロジェクトを、Amazon Inspectorを用いたコードのセキュリティスキャンを実行するように構成します。Amazon Inspectorが脆弱性を検出した場合にエラーを発生させるようにCodeBuildプロジェクトを構成します。Amazon Inspectorスキャンを実行するのに十分な権限を持つ新しいIAMロールを作成し、CodeBuildプロジェクトに割り当てます。パイプラインに、デプロイ段階の前に新しい段階を追加します。この新しい段階のアクションプロバイダーとしてAWS CodeBuildを選択し、CodeCommitリポジトリからのソースアーティファクトを使用します。この段階の操作を、CodeBuildプロジェクトを使用するように構成します。
- C. CodePipelineにアタッチされたIAMロールを更新し、Amazon DevOps Guruを呼び出すのに十分な権限を含めるようにします。パイプラインに、デプロイ段階の前に新しい段階を追加します。この新しい段階のアクションプロバイダーとしてDevOps Guruを選択し、CodeCommitリポジトリからのソースアーティファクトを使用します。
- D. CodePipelineにアタッチされたIAMロールを更新し、Amazon DevOps Guruを呼び出すのに十分な権限を含めるようにします。パイプラインに、デプロイ段階の前に新しい段階を追加します。この新しい段階のアクションプロバイダーとしてCodeGuru Securityを選択し、CodeCommitリポジトリからのソースアーティファクトを使用します。
正解: A. 新しいCodeBuildプロジェクトを作成します。このプロジェクトを、Amazon CodeGuru Securityを用いたセキュリティスキャンを実行するように構成します。CodeGuru Securityが脆弱性を検出した場合にエラーを発生させるようにCodeBuildプロジェクトを構成します。CodeGuru Securityスキャンを実行するのに十分な権限を持つ新しいIAMロールを作成し、CodeBuildプロジェクトに割り当てます。パイプラインに、デプロイ段階の前に新しい段階を追加します。この新しい段階のアクションプロバイダーとしてAWS CodeBuildを選択し、CodeCommitリポジトリからのソースアーティファクトを使用します。この段階の操作を、CodeBuildプロジェクトを使用するように構成します。
解説
AWSサービスの統合およびセキュリティスキャンプロセスに関する問題です。AWSドキュメントによると、Amazon CodeGuru Securityはソースコードの脆弱性スキャンに使用され、CodeBuildおよびCodePipelineと統合することで、ビルド段階でスキャンを実施し、デプロイをブロックできます。選択肢Aは、CodeBuildを用いてCodeGuru Securityスキャンを実行し、脆弱性検出時にエラーを発生させ、適切なIAM権限を設定することで、スキャンの実行およびデプロイのブロックを確実に実現します。選択肢BのInspectorは実行時環境向けであり、ソースコードスキャンには不適です。選択肢CおよびDは誤ったサービスまたはビルド段階の構成不足を含んでおり、デプロイブロック条件を満たしません。