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

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

CodePipeline 权限参考

在设置访问控制和编写可以附加到身份的权限策略(基于IAM身份的策略)时,请使用下表作为参考。该表列出了每项 CodePipeline API操作以及您可以为其授予执行该操作的权限的相应操作。对于支持资源级权限的操作,该表列出了您可以为其授予权限的 Amazon 资源。请在策略的 Action 字段中指定这些操作。

资源级权限是允许您指定允许用户对哪些资源执行操作的权限。 Amazon CodePipeline 为资源级权限提供部分支持。这意味着,对于某些 Amazon CodePipeline API呼叫,您可以根据必须满足的条件或允许用户使用的资源来控制何时允许用户使用这些操作。例如,您可以授予用户列出管道执行信息的权限,但只针对一个或一些特定管道。

注意

资源列列出了支持资源级权限的API呼叫所需的资源。对于不支持资源级权限的API呼叫,您可以向用户授予使用该权限的权限,但必须为策略声明的资源元素指定通配符 (*)。

CodePipeline API操作和操作所需的权限
CodePipeline API运营 所需权限(API操作) 资源

AcknowledgeJob

codepipeline:AcknowledgeJob

查看有关指定作业的信息以及作业辅助角色是否已收到该作业所必需的。仅用于自定义操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

AcknowledgeThirdPartyJob

codepipeline:AcknowledgeThirdPartyJob

确认作业辅助角色已收到指定作业所必需的。仅用于合作伙伴操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

CreateCustomActionType

codepipeline:CreateCustomActionType

创建可在与该 Amazon 账户关联的所有管道中使用的自定义操作所必需的。仅用于自定义操作。

操作类型

arn:aws:codepipeline:region:account:actiontype:owner/category/provider/version

CreatePipeline

codepipeline:CreatePipeline

创建管道所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

DeleteCustomActionType

codepipeline:DeleteCustomActionType

将自定义操作标记为已删除所必需的。自定义操作的 PollForJobs 在该操作标记为删除后失败。仅用于自定义操作。

操作类型

arn:aws:codepipeline:region:account:actiontype:owner/category/provider/version

DeletePipeline

codepipeline:DeletePipeline

删除管道所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

DeleteWebhook

codepipeline:DeleteWebhook

删除 Webhook 所必需的。

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

DeregisterWebhookWithThirdParty

codepipeline:DeregisterWebhookWithThirdParty

在删除 Webhook 之前,需要移除由 CodePipeline 创建的 Webhook 与带有待检测事件的外部工具之间的连接。目前仅支持以操作类型为为为的 Webhook。 GitHub

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

DisableStageTransition

codepipeline:DisableStageTransition

防止管道中的项目过渡到管道中的下一阶段所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

EnableStageTransition

codepipeline:EnableStageTransition

允许管道中的项目过渡到管道中的某一阶段所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

GetJobDetails

codepipeline:GetJobDetails

检索有关作业的信息所必需的。仅用于自定义操作。

不需要资源。

GetPipeline

codepipeline:GetPipeline

检索管道(包括管道)的结构、阶段、操作和元数据所必需的ARN。

管道

arn:aws:codepipeline:region:account:pipeline-name

GetPipelineExecution

codepipeline:GetPipelineExecution

检索有关管道执行的信息,包括有关项目的详细信息、管道执行 ID 以及管道的名称、版本和状态所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

GetPipelineState

codepipeline:GetPipelineState

检索有关管道状态的信息,包括阶段和操作所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

GetThirdPartyJobDetails

codepipeline:GetThirdPartyJobDetails

请求第三方操作的作业详细信息所必需的。仅用于合作伙伴操作。

仅支持在策略的 Resource 元素中使用通配符(*)。
ListActionExecutions

codepipeline:ListActionExecutions

生成操作的所有执行的摘要所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

ListActionTypes

codepipeline:ListActionTypes

需要生成与您的账户关联的所有 CodePipeline 操作类型的摘要。

仅支持在策略的 Resource 元素中使用通配符(*)。

ListPipelineExecutions

codepipeline:ListPipelineExecutions

生成最新管道执行的摘要所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

ListPipelines

codepipeline:ListPipelines

生成与您的账户相关联的所有管道的摘要所必需的。

ARN带通配符的管道(不支持管道名称级别的资源级权限)

arn:aws:codepipeline:region:account:*

ListTagsForResource

codepipeline:ListTagsForResource

列出指定资源的标签所必需的。

资源是可选的。

操作类型

arn:aws:codepipeline:region:account:actiontype:owner/category/provider/version

管道

arn:aws:codepipeline:region:account:pipeline-name

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

ListWebhooks

codepipeline:ListWebhooks

列出该区域的账户中的所有 Webhook 所必需的。

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

PollForJobs

codepipeline:PollForJobs

获取该区域中此账户的所有 Webhook 的列表所必需的。

操作类型

arn:aws:codepipeline:region:account:actiontype:owner/category/provider/version

PollForThirdPartyJobs

codepipeline:PollForThirdPartyJobs

确定是否存在作业辅助角色要对其采取行动的任何第三方作业所必需的。仅用于合作伙伴操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

PutActionRevision

codepipeline:PutActionRevision

需要向源报告 CodePipeline 有关新修订的信息

操作

arn:aws:codepipeline:region:account:pipeline-name/stage-name/action-name

PutApprovalResult

codepipeline:PutApprovalResult

需要向报告对手动批准请求的回应 CodePipeline。有效响应是 ApprovedRejected

操作

arn:aws:codepipeline:region:account:pipeline-name/stage-name/action-name

注意

此API调用支持资源级权限。但是,如果您使用IAM控制台或策略生成器创建包含指定资源的策略"codepipeline:PutApprovalResult",则可能会遇到错误ARN。如果遇到错误,可以使用IAM控制台中的JSON选项卡或创建策略。CLI

PutJobFailureResult

codepipeline:PutJobFailureResult

报告作业辅助角色返回给管道的作业失败状态所必需的。仅用于自定义操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

PutJobSuccessResult

codepipeline:PutJobSuccessResult

报告作业辅助角色返回给管道的作业成功状态所必需的。仅用于自定义操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

PutThirdPartyJobFailureResult

codepipeline:PutThirdPartyJobFailureResult

报告作业辅助角色返回给管道的第三方作业失败状态所必需的。仅用于合作伙伴操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

PutThirdPartyJobSuccessResult

codepipeline:PutThirdPartyJobSuccessResult

报告作业辅助角色返回给管道的第三方作业成功状态所必需的。仅用于合作伙伴操作。

仅支持在策略的 Resource 元素中使用通配符(*)。

PutWebhook

codepipeline:PutWebhook

创建 Webhook 所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

RegisterWebhookWithThirdParty

codepipeline:RegisterWebhookWithThirdParty

创建 webhook 后,需要将支持的第三方配置为调用生成的 Webh URL ook。

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

RetryStageExecution

codepipeline:RetryStageExecution

通过重试阶段中最后一个失败的操作来恢复管道执行所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name/stage-name

StartPipelineExecution

codepipeline:StartPipelineExecution

启动指定管道(具体来说,开始处理指定为管道一部分的源位置的最新提交内容)所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name

StopPipelineExecution

codepipeline:StopPipelineExecution

停止指定管道执行所必需的。您可以通过以下两种方式之一来停止管道执行:完成正在进行的操作而不启动后续操作,或者放弃正在进行的操作。

管道

arn:aws:codepipeline:region:account:pipeline-name

TagResource

codepipeline:TagResource

标记指定资源所必需的。

资源是可选的。

操作类型

arn:aws:codepipeline:region:account:actiontype:owner/category/provider/version

管道

arn:aws:codepipeline:region:account:pipeline-name

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

UntagResource

codepipeline:UntagResource

取消标记指定资源所必需的。

资源是可选的。

操作类型

arn:aws:codepipeline:region:account:actiontype:owner/category/provider/version

管道

arn:aws:codepipeline:region:account:pipeline-name

Webhook

arn:aws:codepipeline:region:account:webhook:webhook-name

UpdatePipeline

codepipeline:UpdatePipeline

使用对管道结构所做编辑或更改更新指定管道所必需的。

管道

arn:aws:codepipeline:region:account:pipeline-name