的操作、资源和条件键 Amazon CodeCommit - 服务授权参考
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

的操作、资源和条件键 Amazon CodeCommit

Amazon CodeCommit (服务前缀:codecommit)提供以下特定于服务的资源、操作和条件上下文密钥,供在 IAM 权限策略中使用。

参考:

由 Amazon CodeCommit 定义的操作

您可以在 IAM 策略语句的 Action 元素中指定以下操作。可以使用策略授予在 Amazon中执行操作的权限。您在策略中使用一项操作时,通常使用相同的名称允许或拒绝对 API 操作或 CLI 命令的访问。但在某些情况下,单一动作可控制对多项操作的访问。还有某些操作需要多种不同的动作。

操作表的资源类型列指示每项操作是否支持资源级权限。如果该列没有任何值,您必须在策略语句的 Resource 元素中指定策略应用的所有资源(“*”)。通过在 IAM policy 中使用条件来筛选访问权限,以控制是否可以在资源或请求中使用特定标签键。如果操作具有一个或多个必需资源,则调用方必须具有使用这些资源来使用该操作的权限。必需资源在表中以星号 (*) 表示。如果您在 IAM policy 中使用 Resource 元素限制资源访问权限,则必须为每种必需的资源类型添加 ARN 或模式。某些操作支持多种资源类型。如果资源类型是可选的(未指示为必需),则可以选择使用一种可选资源类型。

操作表的条件键列包括可以在策略语句的 Condition 元素中指定的键。有关与服务资源关联的条件键的更多信息,请参阅资源类型表的条件键列。

注意

资源条件键在资源类型表中列出。您可以在操作表的资源类型(* 为必需)列中找到应用于某项操作的资源类型的链接。资源类型表中的资源类型包括条件密钥列,这是应用于操作表中操作的资源条件键。

有关下表中各列的详细信息,请参阅操作表

操作 描述 访问级别 资源类型(* 为必需) 条件键 相关操作
AssociateApprovalRuleTemplateWithRepository 授予权限以将批准规则模板与存储库关联 Write

repository*

BatchAssociateApprovalRuleTemplateWithRepositories 授予权限以在单个操作中将一个批准规则模板与多个存储库关联 Write

repository*

BatchDescribeMergeConflicts 授予权限以获取有关在尝试使用三向合并或压缩合并选项合并两个提交时发生的多个合并冲突的信息 Read

repository*

BatchDisassociateApprovalRuleTemplateFromRepositories 授予权限以在单个操作中删除一个批准规则模板与多个存储库之间的关联 写入

repository*

BatchGetCommits 授予返回 Amazon CodeCommit 仓库中一个或多个提交信息的权限 读取

repository*

BatchGetPullRequests [仅权限] 授予返回 Amazon CodeCommit 仓库中一个或多个拉取请求信息的权限 读取

repository*

BatchGetRepositories 授予权限以获取有关多个存储库的信息 Read

repository*

CancelUploadArchive [仅权限] 授予取消将档案上传到管道的权限 Amazon CodePipeline 读取

repository*

CreateApprovalRuleTemplate 授予权限以创建批准规则模板,该模板将在拉取请求中自动创建与模板中定义的条件匹配的批准规则;不授予为单个拉取请求创建批准规则的权限 写入
CreateBranch 授予使用此 API 在 Amazon CodeCommit 仓库中创建分支的权限;不控制 Git 创建分支操作 写入

repository*

codecommit:References

CreateCommit 授予添加、复制、移动或更新 Amazon CodeCommit 存储库中分支中的单个或多个文件的权限,以及为指定分支中的更改生成提交信息的权限 写入

repository*

codecommit:References

CreatePullRequest 授予权限以在指定的存储库中创建拉取请求 Write

repository*

CreatePullRequestApprovalRule 授予权限以创建特定于单个拉取请求的批准规则;不授予创建批准规则模板的权限 写入

repository*

CreateRepository 授予创建 Amazon CodeCommit 仓库的权限 写入

repository*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateUnreferencedMergeCommit 授予权限以创建未引用的提交,其中包含使用三向或压缩合并选项合并两个提交的结果;不控制 Git 合并操作 Write

repository*

codecommit:References

DeleteApprovalRuleTemplate 授予权限以删除批准规则模板 写入
DeleteBranch 授予使用此 API 删除 Amazon CodeCommit 仓库中分支的权限;不控制 Git 删除分支操作 写入

repository*

codecommit:References

DeleteCommentContent 授予权限以删除对存储库中的更改、文件或提交进行的评论内容 Write

repository*

DeleteFile 授予权限以从指定的分支中删除指定的文件 Write

repository*

codecommit:References

DeletePullRequestApprovalRule 授予权限以删除为拉取请求创建的批准规则(如果该规则不是由批准规则模板创建) 写入

repository*

DeleteRepository 授予删除 Amazon CodeCommit 仓库的权限 写入

repository*

DescribeMergeConflicts 授予权限以获取有关在尝试使用三向或压缩合并选项合并两个提交时发生的特定合并冲突的信息 Read

repository*

DescribePullRequestEvents 授予权限以返回有关一个或多个拉取请求事件的信息 Read

repository*

DisassociateApprovalRuleTemplateFromRepository 授予权限以删除批准规则模板与存储库之间关联 Write

repository*

EvaluatePullRequestApprovalRules 授予权限以根据拉取请求的当前批准状态和批准规则要求评估拉取请求是否可合并 Read

repository*

GetApprovalRuleTemplate 授予权限以返回有关批准规则模板的信息 读取
GetBlob 授予从控制台查看 Amazon CodeCommit 存储库中单个文件的编码内容的 Amazon CodeCommit 权限 读取

repository*

GetBranch 授予使用此 API 获取 Amazon CodeCommit 仓库中分支详细信息的权限;不控制 Git 分支操作 读取

repository*

GetComment 授予权限以获取对存储库中的更改、文件或提交进行的评论内容 Read

repository*

GetCommentReactions 授予权限以获取对评论的反应 Read

repository*

GetCommentsForComparedCommit 授予权限以获取有关对两次提交的比较结果进行的评论的信息 Read

repository*

GetCommentsForPullRequest 授予权限以获取对拉取请求进行的评论 Read

repository*

GetCommit 授予权限以使用该 API 返回有关提交的信息,包括提交消息和提交者信息;不控制 Git 日志操作 Read

repository*

GetCommitHistory [仅权限] 授予权限以获取有关存储库中的提交历史记录的信息 Read

repository*

GetCommitsFromMergeBase [仅权限] 授予权限以获取有关潜在合并上下文中的两次提交之间差异的信息 Read

repository*

GetDifferences 授予权限以查看有关有效提交说明符(例如分支、标签、HEAD、提交 ID 或其他完全限定的引用)之间差异的信息 Read

repository*

GetFile 授予权限以返回指定文件及其元数据的 Base-64 编码内容 Read

repository*

GetFolder 授予权限以返回存储库中的指定文件夹的内容 Read

repository*

GetMergeCommit 授予权限以获取有关创建合并提交的拉取请求合并选项之一创建的合并提交的信息。并非所有合并选项都创建合并提交。该权限不控制 Git 合并操作 Read

repository*

codecommit:References

GetMergeConflicts 授予权限以获取有关存储库中的拉取请求的之前提交 ID 和之后提交 ID 之间的合并冲突的信息 Read

repository*

GetMergeOptions 授予权限以获取有关可用于合并两个提交的拉取请求合并选项的信息;不控制 Git 合并操作 Read

repository*

GetObjectIdentifier [仅权限] 授予权限以将 Blob、树和提交解析为其标识符 Read

repository*

GetPullRequest 授予权限以获取有关指定存储库中的拉取请求的信息 Read

repository*

GetPullRequestApprovalStates 授予权限以在输入的拉取请求上检索当前的批准 Read

repository*

GetPullRequestOverrideState 授予权限以检索给定拉取请求的当前覆盖状态 Read

repository*

GetReferences [仅权限] 授予获取 Amazon CodeCommit 仓库中引用详细信息的权限;不控制 Git 引用操作 读取

repository*

GetRepository 授予获取 Amazon CodeCommit 仓库信息的权限 读取

repository*

GetRepositoryTriggers 授予权限以获取有关为存储库配置的触发器的信息 Read

repository*

GetTree [仅权限] 授予从 Amazon CodeCommit 控制台查看 Amazon CodeCommit 存储库中指定树内容的权限 读取

repository*

GetUploadArchiveStatus [仅权限] 授予权限以获取有关上传到管道的档案的状态信息 Amazon CodePipeline 读取

repository*

GitPull [仅权限] 授予将信息从 Amazon CodeCommit 存储库提取到本地存储库的权限 读取

repository*

GitPush [仅权限] 授予将信息从本地存储库推送到存储库的 Amazon CodeCommit 权限 写入

repository*

codecommit:References

ListApprovalRuleTemplates 授予在中列出所有批准规则模板 Amazon Web Services 区域 的权限 Amazon Web Services 账户 列出
ListAssociatedApprovalRuleTemplatesForRepository 授予权限以列出与存储库关联的批准规则模板 列出

repository*

ListBranches 授予使用此 API 列出 Amazon CodeCommit 仓库分支的权限;不控制 Git 分支操作 列出

repository*

ListFileCommitHistory 授予列出对指定文件的提交和更改的权限 列出

repository*

ListPullRequests 授予权限以列出指定存储库的拉取请求 列出

repository*

ListRepositories 授予您列出当前区域中 Amazon CodeCommit 仓库信息的权限 Amazon Web Services 账户 列出
ListRepositoriesForApprovalRuleTemplate 授予权限以列出与批准规则模板关联的存储库 列出
ListTagsForResource 授予列出附加到资源 ARN 的 CodeCommit 资源的权限 列出

repository

MergeBranchesByFastForward 授予权限以使用快进合并选项将两个提交合并到指定的目标分支中 Write

repository*

codecommit:References

MergeBranchesBySquash 授予权限以使用压缩合并选项将两个提交合并到指定的目标分支中 Write

repository*

codecommit:References

MergeBranchesByThreeWay 授予权限以使用三向合并选项将两个提交合并到指定的目标分支中 Write

repository*

codecommit:References

MergePullRequestByFastForward 授予权限以关闭拉取请求,并尝试使用快进合并选项将其合并到指定提交中的该拉取请求的指定目标分支中 Write

repository*

codecommit:References

MergePullRequestBySquash 授予权限以关闭拉取请求,并尝试使用压缩合并选项将其合并到指定提交中的该拉取请求的指定目标分支中 Write

repository*

codecommit:References

MergePullRequestByThreeWay 授予权限以关闭拉取请求,并尝试使用三向合并选项将其合并到指定提交中的该拉取请求的指定目标分支中 Write

repository*

codecommit:References

OverridePullRequestApprovalRules 授予权限以覆盖某个拉取请求的所有批准规则,包括由模板创建的批准规则 Write

repository*

PostCommentForComparedCommit 授予权限以对两个提交之间的比较结果发布评论 Write

repository*

PostCommentForPullRequest 授予权限以对拉取请求发布评论 Write

repository*

PostCommentReply 授予权限以发布评论,以便回复对提交之间的比较结果或拉取请求进行的评论 Write

repository*

PutCommentReaction 授予权限以对评论发布反应 写入

repository*

PutFile 授予在 Amazon CodeCommit 存储库分支中添加或更新文件的权限,以及为指定分支中的新增文件生成提交 写入

repository*

codecommit:References

PutRepositoryTriggers 授予权限以创建、更新或删除存储库的触发器 写入

repository*

TagResource 授予将资源标签附加到 CodeCommit 资源 ARN 的权限 标记

repository

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

TestRepositoryTriggers 授予权限以将信息发送到触发器目标,以便测试存储库触发器的功能 写入

repository*

UntagResource 授予取消资源标签与资源 ARN 关联的 CodeCommit 权限 标记

repository

aws:TagKeys

aws:ResourceTag/${TagKey}

UpdateApprovalRuleTemplateContent 授予权限以更新批准规则模板内容;不授予更新专为拉取请求创建的批准规则内容的权限 Write
UpdateApprovalRuleTemplateDescription 授予权限以更新批准规则模板的描述 Write
UpdateApprovalRuleTemplateName 授予权限以更新批准规则模板的名称 Write
UpdateComment 授予权限以在身份与用于创建评论的身份匹配时更新评论内容 写入

repository*

UpdateDefaultBranch 授予更改 Amazon CodeCommit 仓库中默认分支的权限 写入

repository*

UpdatePullRequestApprovalRuleContent 授予权限以更新为特定拉取请求创建的批准规则内容;不授予更新使用批准规则模板为规则创建的批准规则内容的权限 Write

repository*

UpdatePullRequestApprovalState 授予权限以更新拉取请求的批准状态 Write

repository*

UpdatePullRequestDescription 授予权限以更新拉取请求描述 Write

repository*

UpdatePullRequestStatus 授予权限以更新拉取请求状态 Write

repository*

UpdatePullRequestTitle 授予权限以更新推送请求标题 写入

repository*

UpdateRepositoryDescription 授予更改 Amazon CodeCommit 仓库描述的权限 写入

repository*

UpdateRepositoryEncryptionKey 授予更改用于加密和解密存储库的 Amazon KMS 加密密钥的权限 Amazon CodeCommit 写入

repository*

UpdateRepositoryName 授予更改 Amazon CodeCommit 仓库名称的权限 写入

repository*

UploadArchive [仅权限] 向的服务角色授予将仓库变更上传 Amazon CodePipeline 到管道的权限 写入

repository*

Amazon CodeCommit 定义的资源类型

以下资源类型是由该服务定义的,可以在 IAM 权限策略语句的 Resource 元素中使用这些资源类型。操作表中的每个操作指定了可以使用该操作指定的资源类型。您也可以在策略中包含条件键,从而定义资源类型。这些键显示在资源类型表的最后一列。有关下表中各列的详细信息,请参阅资源类型表

资源类型 ARN 条件键
repository arn:${Partition}:codecommit:${Region}:${Account}:${RepositoryName}

aws:ResourceTag/${TagKey}

Amazon CodeCommit 的条件键

Amazon CodeCommit 定义了可在 IAM 策略Condition元素中使用的以下条件键。您可以使用这些键进一步细化应用策略语句的条件。有关下表中各列的详细信息,请参阅条件键表

要查看适用于所有服务的全局条件键,请参阅可用的全局条件键

条件键 描述 类型
aws:RequestTag/${TagKey} 根据在请求中是否具有标签键值对来筛选访问权限 字符串
aws:ResourceTag/${TagKey} 按附加到资源的标签键值对筛选操作 字符串
aws:TagKeys 根据在请求中是否具有标签键来筛选访问 ArrayOfString
codecommit:References 通过 Git 对指定 Amazon CodeCommit 操作的引用筛选访问权限 字符串