AWS CodeCommit 不再向新客户提供。 AWS CodeCommit 的现有客户可以继续正常使用该服务。了解更多
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用基于身份的策略(IAM策略) CodeCommit
以下基于身份的策略示例演示了账户管理员如何将权限策略附加到IAM身份(用户、组和角色),以授予对资源执行操作的权限。 CodeCommit
重要
我们建议您先阅读介绍性主题,这些主题解释了管理 CodeCommit 资源访问权限的基本概念和选项。有关更多信息,请参阅 管理 CodeCommit 资源访问权限概述。
下面是基于身份的权限策略的示例:
{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codecommit:BatchGetRepositories" ], "Resource" : [ "arn:aws:codecommit:us-east-2:111111111111:MyDestinationRepo", "arn:aws:codecommit:us-east-2:111111111111:MyDemo*" ] } ] }
该政策有一条声明,允许用户获取有关名为的 CodeCommit存储库MyDestinationRepo
以及该us-east-2
区域MyDemo
中所有以该名称开头的 CodeCommit 存储库的信息。
使用 CodeCommit 控制台所需的权限
要查看每个 CodeCommit API操作所需的权限以及有关 CodeCommit 操作的更多信息,请参阅CodeCommit 权限参考。
要允许用户使用 CodeCommit 控制台,管理员必须向他们授予 CodeCommit 操作权限。例如,您可以将AWSCodeCommitPowerUser托管策略或其等效策略附加到用户或组。
除了通过基于身份的策略向用户授予的权限外,还 CodeCommit需要 AWS Key Management Service (AWS KMS) 操作的权限。IAM用户无需显式Allow
权限即可执行这些操作,但该用户不得附加任何将以下权限设置为Deny
:
"kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:DescribeKey"
有关加密和的更多信息 CodeCommit,请参阅AWS KMS 和加密。
在控制台中查看资源
CodeCommit 控制台需要ListRepositories
获得在您登录时显示您的 Amazon Web Services 账户的 AWS 区域 存储库列表的权限。该控制台还包括一个转到资源功能,可对资源快速执行不区分大小写的搜索。此搜索是在您登录时的 Amazon Web Ser AWS 区域 vices 账户中执行的。将显示以下服务中的以下资源:
-
AWS CodeBuild:构建项目
-
AWS CodeCommit:存储库
-
AWS CodeDeploy:应用程序
-
AWS CodePipeline:管道
要在所有服务中跨资源执行此搜索,您必须具有如下权限:
-
CodeBuild:
ListProjects
-
CodeCommit:
ListRepositories
-
CodeDeploy:
ListApplications
-
CodePipeline:
ListPipelines
如果您没有针对某个服务的权限,搜索将不会针对该服务的资源返回结果。即使您有权限查看资源,但如果特定资源明确 Deny
查看,搜索也不会返回这些资源。