为关联账户配置 IAM 角色 - Amazon CodeCatalyst

为关联账户配置 IAM 角色

您可以在 AWS Identity and Access Management(IAM)中为要添加到 CodeCatalyst 的账户创建角色。如果添加的是计费账户,则无需创建角色。

在您的 AWS 账户中,您必须拥有为要添加到空间的 AWS 账户创建角色的权限。有关 IAM 角色和策略的更多信息,包括 IAM 参考和策略示例,请参阅 Identity and Access Management 和 Amazon CodeCatalyst。有关 CodeCatalyst 中使用的信任策略和服务主体的更多信息,请参阅了解 CodeCatalyst 信任模型

在 CodeCatalyst 中,您必须以空间管理员角色登录,才能完成向空间添加账户 [以及角色(如适用)] 的步骤。

您可以使用以下方法之一为账户连接添加角色。

CodeCatalystWorkflowDevelopmentRole-spaceName角色

您只需在 IAM 中点击一下,即可创建开发人员角色。您必须在要添加账户的空间中拥有空间管理员高级用户角色。您还必须拥有要添加的 AWS 账户的管理权限。

在开始以下步骤之前,您必须使用要添加到 CodeCatalyst 空间的同一账户登录 AWS Management Console。否则,控制台将返回未知账户错误。

创建和添加 CodeCatalyst CodeCatalystWorkflowDevelopmentRole-spaceName
  1. 在 CodeCatalyst 控制台中开始操作之前,请先打开 AWS Management Console,然后确保您使用空间的同一 AWS 账户进行登录。

  2. 通过访问 https://codecatalyst.aws/ 打开 CodeCatalyst 控制台。

  3. 导航到您的 CodeCatalyst 空间。选择 Settings (设置),然后选择 AWS 账户

  4. 选择要在其中创建角色的 AWS 账户的链接。此时将显示 AWS 账户详细信息页面。

  5. 选择从 AWS Management Console中管理角色

    这将在 AWS Management Console中打开将 IAM 角色添加到 Amazon CodeCatalyst 空间页面。这是 Amazon CodeCatalyst 空间页面。您可能需要登录才能访问该页面。

  6. 选择在 IAM 中创建 CodeCatalyst 开发管理员角色。此选项将创建一个服务角色,其中包含开发角色的权限策略和信任策略。该角色的名称为 CodeCatalystWorkflowDevelopmentRole-spaceName。有关角色和角色策略的更多信息,请参阅了解 CodeCatalystWorkflowDevelopmentRole-spaceName 服务角色

    注意

    建议仅将此角色用于开发人员账户,并使用 AdministratorAccess AWS 托管式策略,从而向此角色授予完全访问权限以便在该 AWS 账户中创建新的策略和资源。

  7. 选择创建开发角色

  8. 在连接页面上的 CodeCatalyst 可用的 IAM 角色下,查看已添加到您账户的 IAM 角色的列表中的 CodeCatalystWorkflowDevelopmentRole-spaceName 角色。

  9. 要返回您的空间,请选择转到 Amazon CodeCatalyst

AWSRoleForCodeCatalystSupport角色

您只需在 IAM 中点击一下,即可创建支持角色。您必须在要添加账户的空间中拥有空间管理员高级用户角色。您还必须拥有要添加的 AWS 账户的管理权限。

在开始以下步骤之前,您必须使用要添加到 CodeCatalyst 空间的同一账户登录 AWS Management Console。否则,控制台将返回未知账户错误。

创建和添加 CodeCatalyst AWSRoleForCodeCatalystSupport
  1. 在 CodeCatalyst 控制台中开始操作之前,请先打开 AWS Management Console,然后确保您使用空间的同一 AWS 账户进行登录。

  2. 导航到您的 CodeCatalyst 空间。选择 Settings (设置),然后选择 AWS 账户

  3. 选择要在其中创建角色的 AWS 账户的链接。此时将显示 AWS 账户详细信息页面。

  4. 选择从 AWS Management Console中管理角色

    这将在 AWS Management Console中打开将 IAM 角色添加到 Amazon CodeCatalyst 空间页面。这是 Amazon CodeCatalyst 空间页面。您可能需要登录才能访问该页面。

  5. CodeCatalyst 空间详细信息下,选择添加 CodeCatalyst 支持角色。此选项将创建一个服务角色,其中包含预览开发角色的权限策略和信任策略。该角色的名称为 AWSRoleForCodeCatalystSupport,并且将附加唯一标识符。有关角色和角色策略的更多信息,请参阅了解 AWSRoleForCodeCatalystSupport 服务角色

  6. 添加用于 CodeCatalyst 支持的角色页面上,保留默认选定项,然后选择创建角色

  7. CodeCatalyst 可用的 IAM 角色下,查看已添加到您账户的 IAM 角色的列表中的 CodeCatalystWorkflowDevelopmentRole-spaceName 角色。

  8. 要返回您的空间,请选择转到 Amazon CodeCatalyst

创建 IAM 角色并使用 CodeCatalyst 信任策略

在 CodeCatalyst 中使用 AWS 账户连接的 IAM 角色必须配置为使用此处提供的信任策略。使用以下步骤创建 IAM 角色并附加策略,以便在 CodeCatalyst 中根据蓝图创建项目。

作为替代方法,您可以创建一个服务角色,其中包含 CodeCatalystWorkflowDevelopmentRole-spaceName 角色的权限策略和信任策略。有关更多信息,请参阅 将 IAM 角色添加到账户连接

  1. 登录 AWS Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 角色,然后选择 创建角色

  3. 选择自定义信任策略

  4. 自定义信任策略表单下,粘贴以下信任策略。

    "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:codecatalyst:::space/spaceId/project/*" } } } ]
  5. 选择下一步

  6. 添加权限下,搜索并选择您已在 IAM 中创建的自定义策略。

  7. 选择下一步

  8. 对于角色名称,输入角色的名称,例如:codecatalyst-project-role

  9. 选择 Create role(创建角色)。

  10. 复制角色的 Amazon 资源名称(ARN)。在将该角色添加到您的账户关联或环境中时,您需要提供该信息。