开发者工具控制台中的功能是如何使用的 IAM - 开发工具控制台

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

开发者工具控制台中的功能是如何使用的 IAM

在使用IAM开发者工具控制台中管理功能访问权限之前,您应该了解哪些IAM功能可以与其一起使用。要全面了解通知和其他 AWS 服务的使用方式IAM,请参阅《IAM用户指南》IAM与之配合使用的AWS 服务

开发工具控制台中基于身份的策略

使用IAM基于身份的策略,您可以指定允许或拒绝的操作和资源,以及允许或拒绝操作的条件。 AWS CodeStar 通知和 AWS CodeConnections 支持特定的操作、资源和条件键。要了解您在JSON策略中使用的所有元素,请参阅IAM用户指南中的IAMJSON策略元素参考

操作

管理员可以使用 AWS JSON策略来指定谁有权访问什么。也就是说,哪个主体 可以对什么资源执行操作,以及在什么条件下执行。

JSON策略Action元素描述了可用于在策略中允许或拒绝访问的操作。策略操作通常与关联的 AWS API操作同名。也有一些例外,例如没有匹配API操作的仅限权限的操作。还有一些操作需要在策略中执行多个操作。这些附加操作称为相关操作

在策略中包含操作以授予执行关联操作的权限。

开发工具控制台中的通知的策略操作在操作前使用以下前缀:codestar-notifications and codeconnections。例如,要授予某人查看其账户中所有通知规则的权限,请将 codestar-notifications:ListNotificationRules 操作包括在其策略中。策略声明必须包含ActionNotAction元素。 AWS CodeStar 通知并 AWS CodeConnections 定义其自己的一组操作,这些操作描述了您可以使用此服务执行的任务。

要在单个语句中指定多个 AWS CodeStar 通知操作,请用逗号分隔它们,如下所示。

"Action": [ "codestar-notifications:action1", "codestar-notifications:action2"

要在单个语句中指定多个 AWS CodeConnections 操作,请用逗号分隔它们,如下所示。

"Action": [ "codeconnections:action1", "codeconnections:action2"

您也可以使用通配符 (*) 指定多个操作。例如,要指定以单词 List 开头的所有操作,请包括以下操作。

"Action": "codestar-notifications:List*"

AWS CodeStar 通知API操作包括:

  • CreateNotificationRule

  • DeleteNotificationRule

  • DeleteTarget

  • DescribeNotificationRule

  • ListEventTypes

  • ListNotificationRules

  • ListTagsForResource

  • ListTargets

  • Subscribe

  • TagResource

  • Unsubscribe

  • UntagResource

  • UpdateNotificationRule

AWS CodeConnections API操作包括以下内容:

  • CreateConnection

  • DeleteConnection

  • GetConnection

  • ListConnections

  • ListTagsForResource

  • TagResource

  • UntagResource

要完成身份验证握手,需要执行以下仅限权限的操作: AWS CodeConnections

  • GetIndividualAccessToken

  • GetInstallationUrl

  • ListInstallationTargets

  • StartOAuthHandshake

  • UpdateConnectionInstallation

要使用连接,需要执行以下仅限权限 AWS CodeConnections 的操作:

  • UseConnection

要将连接传递 AWS CodeConnections 到服务,需要在中执行以下仅限权限的操作:

  • PassConnection

要查看 AWS CodeStar 通知和 AWS CodeConnections 操作列表,请参阅《IAM用户指南》 AWS CodeConnections中的 “由 AWS CodeStar 通知定义操作” 和 “由定义的操作”。

资源

AWS CodeStar 通知, AWS CodeConnections 不支持在策略ARNs中指定资源。

条件键

AWS CodeStar 通知并 AWS CodeConnections 定义自己的条件键集,还支持使用一些全局条件键。要查看所有 AWS 全局条件键,请参阅《IAM用户指南》中的AWS 全局条件上下文密钥

所有 AWS CodeStar 通知操作都支持codestar-notifications:NotificationsForResource条件键。有关更多信息,请参阅 基于身份的策略示例

AWS CodeConnections 定义以下可在IAM策略Condition元素中使用的条件键。您可以使用这些键进一步细化应用策略语句的条件。有关更多信息,请参阅 AWS CodeConnections 权限参考

条件键 描述

codeconnections:BranchName

按第三方存储库的分支名称筛选访问权限。

codeconnections:FullRepositoryId

按请求中传递的存储库来筛选访问权限。仅适用于访问特定存储库的 UseConnection 请求
codeconnections:InstallationId 按用于更新连接的第三方 ID(如 Bitbucket 应用程序安装 ID)来筛选访问权限。允许您限制哪些第三方应用程序安装可用于建立连接
codeconnections:OwnerId 按所有者或第三方提供程序的帐户 ID 来筛选访问权限

codeconnections:PassedToService

按允许委托人向其传递连接的服务来筛选访问权限

codeconnections:ProviderAction

UseConnection 请求中的提供程序操作(如 ListRepositories)来筛选访问权限。
codeconnections:ProviderPermissionsRequired 按第三方提供程序权限的类型来筛选访问权限

codeconnections:ProviderType

按请求中传递的第三方提供程序的类型来筛选访问权限
codeconnections:ProviderTypeFilter 按用于筛选结果的第三方提供程序的类型来筛选访问权限
codeconnections:RepositoryName 按第三方存储库的名称筛选访问权限

示例

要查看 AWS CodeStar 通知和 AWS CodeConnections 基于身份的策略的示例,请参阅。 基于身份的策略示例

AWS CodeStar 通知和 AWS CodeConnections 基于资源的政策

AWS CodeStar 通知, AWS CodeConnections 不支持基于资源的策略。

基于标签的授权

您可以为 AWS CodeStar 通知和 AWS CodeConnections 资源附加标签,也可以在请求中传递标签。要基于标签控制访问,您需要使用 codestar-notifications and codeconnections:ResourceTag/key-nameaws:RequestTag/key-nameaws:TagKeys 条件键在策略的条件元素中提供标签信息。有关标记策略的更多信息,请参阅标记资源。 AWS有关为 AWS CodeStar 通知和 AWS CodeConnections 资源添加标签的更多信息,请参阅为连接资源添加标签

要查看基于身份的策略(用于根据资源上的标签来限制对该资源的访问)的示例,请参阅 使用标签控制对 AWS CodeConnections 资源的访问权限

IAM 角色

IAM角色是您的 AWS 账户中具有特定权限的实体。

使用临时凭证

您可以使用临时证书通过联合身份登录,并担任IAM角色或跨账户角色。您可以通过调用AssumeRole或之类的 AWS STS API操作来获取临时安全证书GetFederationToken

AWS CodeStar 通知并 AWS CodeConnections 支持使用临时证书。

服务相关角色

服务相关角色允许 AWS 服务访问其他服务中的资源以代表您完成操作。服务相关角色显示在您的IAM账户中,并归服务所有。IAM管理员可以查看但不能编辑服务相关角色的权限。

AWS CodeStar 通知支持服务相关角色。有关创建或管理 AWS CodeStar 通知和 AWS CodeConnections 服务相关角色的详细信息,请参阅为 AWS CodeStar 通知使用服务相关角色

CodeConnections 不支持服务相关角色。