テストレポートのアクセス許可
このトピックでは、テストレポートに関連するアクセス権限に関する重要な情報について説明します。
テストレポートの IAM ロール
テストレポートを実行し、テストレポートを含めるようにプロジェクトを更新するには、IAM ロールに以下のアクセス権限が必要です。これらのアクセス権限は、定義済みの AWS 管理ポリシーに含まれています。既存のビルドプロジェクトにテストレポートを追加する場合は、これらのアクセス権限を自分で追加する必要があります。
-
CreateReportGroup
-
CreateReport
-
UpdateReport
-
BatchPutTestCases
コードカバレッジレポートを実行するには、IAM ロールに BatchPutCodeCoverages
アクセス許可が付与されている必要もあります。
注記
BatchPutTestCases
、CreateReport
、UpdateReport
、および BatchPutCodeCoverages
はパブリック権限ではありません。これらのアクセス権限に対して、対応する AWS CLI コマンドまたは SDK メソッドを呼び出すことはできません。
これらのアクセス許可があることを確認するには、次のポリシーを IAM ロールにアタッチします。
{ "Effect": "Allow", "Resource": [ "*" ], "Action": [ "codebuild:CreateReportGroup", "codebuild:CreateReport", "codebuild:UpdateReport", "codebuild:BatchPutTestCases", "codebuild:BatchPutCodeCoverages" ] }
このポリシーは、使用する必要があるレポートグループだけに制限することをお勧めします。以下の例では、ポリシー内の 2 つの ARN を持つレポートグループのみにアクセス権限を制限します。
{ "Effect": "Allow", "Resource": [ "arn:aws:codebuild:your-region:your-aws-account-id:report-group/report-group-name-1", "arn:aws:codebuild:your-region:your-aws-account-id:report-group/report-group-name-2" ], "Action": [ "codebuild:CreateReportGroup", "codebuild:CreateReport", "codebuild:UpdateReport", "codebuild:BatchPutTestCases", "codebuild:BatchPutCodeCoverages" ] }
以下の例では、my-project
という名前のプロジェクトのビルドを実行することによって作成されたレポートグループのみにアクセス権限を制限しています。
{ "Effect": "Allow", "Resource": [ "arn:aws:codebuild:your-region:your-aws-account-id:report-group/my-project-*" ], "Action": [ "codebuild:CreateReportGroup", "codebuild:CreateReport", "codebuild:UpdateReport", "codebuild:BatchPutTestCases", "codebuild:BatchPutCodeCoverages" ] }
注記
プロジェクトで指定した CodeBuild サービスロールは、S3 バケットにアップロードするアクセス許可に使用されます。
テストレポートオペレーションのアクセス許可
次のテストレポート CodeBuild API オペレーションのアクセス権限を指定できます。
-
BatchGetReportGroups
-
BatchGetReports
-
CreateReportGroup
-
DeleteReportGroup
-
DeleteReport
-
DescribeTestCases
-
ListReportGroups
-
ListReports
-
ListReportsForReportGroup
-
UpdateReportGroup
詳細については、「AWS CodeBuild の許可に関するリファレンス」を参照してください。
テストレポートのアクセス許可の例
テストレポートに関連するサンプルポリシーの詳細については、以下を参照してください。