的权限和示例 AWS CodeConnections - 开发工具控制台

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

的权限和示例 AWS CodeConnections

以下策略语句和示例可帮助您管理 AWS CodeConnections。

有关如何使用这些示例JSON策略文档创建IAM基于身份的策略的信息,请参阅《IAM用户指南》中JSON选项卡上的 “创建策略”。

示例:使用控制台创建CLI和 AWS CodeConnections 使用控制台查看的策略

被指定使用或查看、创建、标记 AWS CLI 或SDK删除连接的角色或用户的权限应限制为以下内容。

注意

您无法在仅具有以下权限的情况时,在控制台中完成连接。您需要在下一部分中添加权限。

要使用控制台查看可用连接的列表、查看标签以及使用连接,请使用以下策略。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConnectionsFullAccess", "Effect": "Allow", "Action": [ "codeconnections:CreateConnection", "codeconnections:DeleteConnection", "codeconnections:UseConnection", "codeconnections:GetConnection", "codeconnections:ListConnections", "codeconnections:TagResource", "codeconnections:ListTagsForResource", "codeconnections:UntagResource" ], "Resource": "*" } ] }

示例:使用控制台创建 AWS CodeConnections 的策略

指定用于在控制台中管理连接的角色或用户,应具有在控制台中完成连接和创建安装所需的权限,这包括授权与提供程序握手和为要使用的连接创建安装。在控制台中使用连接还需要添加 UseConnection。使用以下策略在控制台中查看、使用、创建、标记或删除连接。

注意

从 2024 年 7 月 1 日起,控制台将在资源codeconnectionsARN中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

注意

对于使用控制台创建的资源,策略声明操作必须包含codestar-connections作为服务前缀,如以下示例所示。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codestar-connections:CreateConnection", "codestar-connections:DeleteConnection", "codestar-connections:GetConnection", "codestar-connections:ListConnections", "codestar-connections:GetInstallationUrl", "codestar-connections:GetIndividualAccessToken", "codestar-connections:ListInstallationTargets", "codestar-connections:StartOAuthHandshake", "codestar-connections:UpdateConnectionInstallation", "codestar-connections:UseConnection", "codestar-connections:TagResource", "codestar-connections:ListTagsForResource", "codestar-connections:UntagResource" ], "Resource": [ "*" ] } ] }

示例:管理员级别的管理策略 AWS CodeConnections

在此示例中,您想向 AWS 账户中的IAM用户授予完全访问权限, CodeConnections 以便该用户可以添加、更新和删除连接。这是完全访问策略,等同于 AWSCodePipeline_ FullAccess 托管策略。与该托管策略一样,您只应将此类策略声明附加到需要对 AWS 账户连接具有完全管理权限的IAM用户、群组或角色。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConnectionsFullAccess", "Effect": "Allow", "Action": [ "codeconnections:CreateConnection", "codeconnections:DeleteConnection", "codeconnections:UseConnection", "codeconnections:GetConnection", "codeconnections:ListConnections", "codeconnections:ListInstallationTargets", "codeconnections:GetInstallationUrl", "codeconnections:StartOAuthHandshake", "codeconnections:UpdateConnectionInstallation", "codeconnections:GetIndividualAccessToken", "codeconnections:TagResource", "codeconnections:ListTagsForResource", "codeconnections:UntagResource" ], "Resource": "*" } ] }

示例:用于使用的贡献者级别的策略 AWS CodeConnections

在此示例中,您希望授予 day-to-day使用权限 CodeConnections,例如创建和查看连接的详细信息,但不允许授予更具破坏性的操作(例如删除连接)的访问权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCodeConnectionsPowerUserAccess", "Effect": "Allow", "Action": [ "codeconnections:CreateConnection", "codeconnections:UseConnection", "codeconnections:GetConnection", "codeconnections:ListConnections", "codeconnections:ListInstallationTargets", "codeconnections:GetInstallationUrl", "codeconnections:GetIndividualAccessToken", "codeconnections:StartOAuthHandshake", "codeconnections:UpdateConnectionInstallation", "codeconnections:ListTagsForResource" ], "Resource": "*" } ] }

示例:使用 read-only-level策略 AWS CodeConnections

在此示例中,您想向账户中的IAM用户授予对您账户中连接的只读访问权限。 AWS 该示例说明了如何创建策略以允许查看这些项。

{ "Version": "2012-10-17", "Id": "Connections__ReadOnly", "Statement": [ { "Sid": "Reads_API_Access", "Effect": "Allow", "Action": [ "codeconnections:GetConnection", "codeconnections:ListConnections", "codeconnections:ListInstallationTargets", "codeconnections:GetInstallationUrl", "codeconnections:ListTagsForResource" ], "Resource": "*" } ] }

示例:用于 AWS CodeConnections 指定存储库的范围缩小策略

在以下示例中,客户希望 CodeBuild 服务角色访问指定的 Bitbucket 存储库。关于 CodeBuild 服务角色的政策:

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "codeconnections:UseConnection" ], "Resource": "arn:aws:codeconnections:us-west-2:connection:3dee99b9-172f-4ebe-a257-722365a39557", "Condition": {"ForAllValues:StringEquals": {"codeconnections:FullRepositoryId": "myrepoowner/myreponame"}} } }

示例:使用与之连接的策略 CodePipeline

在以下示例中,管理员希望用户使用与的连接 CodePipeline。附加至用户的策略:

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "codeconnections:PassConnection" ], "Resource": "arn:aws:codeconnections:us-west-2:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f", "Condition": {"ForAllValues:StringEquals": {"codeconnections:PassedToService": "codepipeline.amazonaws.com"}} } }

示例:使用 CodeBuild 服务角色进行 Bitbucket 读取操作 AWS CodeConnections

在以下示例中,无论存储库如何,客户都希望 CodeBuild 服务角色对 Bitbucket 执行读取操作。关于 CodeBuild 服务角色的政策:

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "codeconnections:UseConnection" ], "Resource": "arn:aws:codeconnections:us-west-2:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f", "Condition": {"ForAllValues:StringEquals": {"codeconnections:ProviderPermissionsRequired": "read_only"}} } }

示例:限制 CodeBuild 服务角色使用执行操作 AWS CodeConnections

在以下示例中,客户希望阻止 CodeBuild 服务角色执行类似的操作CreateRepository。关于 CodeBuild 服务角色的政策:

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "codeconnections:UseConnection" ], "Resource": "arn:aws:codeconnections:us-west-2:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f", "Condition": {"ForAllValues:StringNotEquals": {"codeconnections:ProviderAction": "CreateRepository"}} } }