AWS CodeBuild 权限参考 - AWS CodeBuild
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS CodeBuild 权限参考

在设置访问控制和编写您可附加到 IAM 身份的权限策略(基于身份的策略)时,可以使用下表作为参考。

您可以在 AWS CodeBuild 策略中使用 AWS 范围的条件键来表示条件。有关列表,请参阅 https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys 中的IAM 用户指南可用键

请在策略的 Action 字段中指定这些操作。要指定操作,请在 API 操作名称之前使用 codebuild: 前缀(例如,codebuild:CreateProjectcodebuild:StartBuild)。要在单个语句中指定多项操作,请使用逗号将它们隔开(例如,"Action": [ "codebuild:CreateProject", "codebuild:StartBuild" ])。

使用通配符

您可以在策略的 Resource 字段中指定带或不带通配符 (*) 的 ARN 作为资源值。您可以使用通配符指定多个操作或资源。例如, codebuild:* 指定全部 CodeBuild 行动和 codebuild:Batch* 指定全部 CodeBuild 从词语开始的操作 Batch...以下示例授予访问所有创建项目的权限,其中的名称以 my:

arn:aws:codebuild:us-east-2:123456789012:project/my*

CodeBuild API 操作和必需的操作权限

BatchDeleteBuilds

操作:codebuild:BatchDeleteBuilds

删除构建所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

BatchGetBuilds

操作:codebuild:BatchGetBuilds

获取有关构建项目的信息所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

BatchGetProjects

操作:codebuild:BatchGetProjects

获取有关构建项目的信息所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

BatchGetReportGroups

操作:codebuild:BatchGetReportGroups

获取有关报告组的信息所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

BatchGetReports

操作:codebuild:BatchGetReports

获取有关报告的信息所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

BatchPutTestCases ¹

操作:codebuild:BatchPutTestCases

创建或更新测试报告所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

CreateProject

操作: codebuild:CreateProjectiam:PassRole

是创建构建项目所必需的。

资源:

  • arn:aws:codebuild:region-ID:account-ID:project/project-name

  • arn:aws:iam:account-ID:role/role-name

CreateReport ¹

操作:codebuild:CreateReport

创建测试报告所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

CreateReportGroup

操作:codebuild:CreateReportGroup

创建报告组所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

CreateWebhook

操作:codebuild:CreateWebhook

创建 Webhook 所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

DeleteReport

操作:codebuild:DeleteReport

删除报告所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

DeleteReportGroup

操作:codebuild:DeleteReportGroup

删除报告组所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

DeleteSourceCredentials

操作:codebuild:DeleteSourceCredentials

要求删除一组 SourceCredentialsInfo 对象,其中包含有关 GitHub、GitHub Enterprise Server 或 Bitbucket 存储库的凭证的信息。

资源: *

DeleteWebhook

操作:codebuild:DeleteWebhook

创建 Webhook 所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

DescribeTestCases

操作:codebuild:DescribeTestCases

返回测试用例的分页列表所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

ImportSourceCredentials

操作:codebuild:ImportSourceCredentials

要求导入一组 SourceCredentialsInfo 对象,其中包含有关 GitHub、GitHub Enterprise Server 或 Bitbucket 存储库的凭证的信息。

资源: *

InvalidateProjectCache

操作:codebuild:InvalidateProjectCache

是重置项目缓存所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

ListBuilds

操作:codebuild:ListBuilds

是获取构建 ID 的列表所必需的。

资源: *

ListBuildsForProject

操作:codebuild:ListBuildsForProject

是获取构建项目的构建 ID 列表所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

ListCuratedEnvironmentImages

操作:codebuild:ListCuratedEnvironmentImages

是获取由 AWS CodeBuild 管理的所有 Docker 映像的相关信息所必需的。

Resource *(必需,但不引用可寻址的 AWS 资源)

ListProjects

操作:codebuild:ListProjects

是获取构建项目名称的列表所必需的。

资源: *

ListReportGroups

操作:codebuild:ListReportGroups

获取报告组列表所必需的。

资源: *

ListReports

操作:codebuild:ListReports

获取报告列表所必需的。

资源: *

ListReportsForReportGroup

操作:codebuild:ListReportsForReportGroup

获取报告组的报告列表所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

回缩构建

操作:codebuild:RetryBuild

需要重试的必要内容。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

StartBuild

操作:codebuild:StartBuild

是开始运行构建项目所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

StopBuild

操作:codebuild:StopBuild

是尝试停止运行中构建项目所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

UpdateProject

操作: codebuild:UpdateProjectiam:PassRole

是更改构建项目的相关信息所必需的。

资源:

  • arn:aws:codebuild:region-ID:account-ID:project/project-name

  • arn:aws:iam:account-ID:role/role-name

UpdateReport ¹

操作:codebuild:UpdateReport

创建或更新测试报告所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

UpdateReportGroup

操作:codebuild:UpdateReportGroup

更新报告组所必需的。

资源: arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name

UpdateWebhook

操作:codebuild:UpdateWebhook

为更新 Webhook 所必需。

资源: arn:aws:codebuild:region-ID:account-ID:project/project-name

¹ 仅供许可。此操作没有API。