ある企業のDevOpsチームは、CodeCommitを使用して複数のJavaマイクロサービスを管理しています。セキュリティ監査で、開発者がAWSアクセスキーやAPIトークンをコードに誤ってコミットするインシデントが頻発していることが判明しました。プルリクエスト(PR)のマージ前という最も早い段階で、コードレビュープロセスの中でシークレットを自動検出するための最適な方法を選択してください。
Amazon Q Developer のセキュリティスキャン(旧 Amazon CodeGuru Security。2024年4月に Amazon Q Developer へ統合)は、MLベースの静的解析によりハードコードされたシークレット(AWSキー・APIトークン等)やOWASP Top 10脆弱性をコードから検出します。CodeBuildに統合しCodeCommitのPRイベントをトリガーとすることで、マージ前の早い段階でシークレット検出が実現できます。 選択肢Aのgit-secretsはローカルのgitフック実行が主用途であり、CI環境への統合には追加設定が必要です。Amazon Q DeveloperのようなAWSマネージド統合・検出レポートと比べて導入深度で劣ります。 選択肢CのAmazon MacieはS3オブジェクトを対象とした機密データ検出サービスであり、CodeCommitリポジトリのコードを直接スキャンするAPIや統合機能は提供されていません。 選択肢DのAWS Configはリソースの設定変更を追跡するサービスであり、CodeCommitに格納されたコード内のシークレットパターンをリアルタイムでスキャン・検出する目的には適していません。