步骤 6:添加启动约束以分配 IAM 角色 - AWS Service Catalog

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

步骤 6:添加启动约束以分配 IAM 角色

启动约束指定 IAM 角色,最终用户启动产品时 AWS Service Catalog 将担任此角色。

在此步骤中,您添加启动约束到 Linux Desktop 产品,以便 AWS Service Catalog 可使用作为产品 AWS CloudFormation 模板一部分的 IAM 资源。

您向产品分配的作为启动约束的 IAM 角色必须具有以下权限

  1. AWS CloudFormation

  2. 产品 AWS CloudFormation 模板中的服务

  3. 自服务拥有的 Amazon S3 存储桶中读取 AWS CloudFormation 模板的访问权限。

此启动约束让最终用户可以启动产品,并在启动之后将其作为预配置产品进行管理。有关更多信息,请参阅 AWS Service Catalog 启动约束

没有启动约束时,您需要先将额外的 IAM 权限授予您的最终用户,他们才能使用 Linux Desktop 产品。例如,ServiceCatalogEndUserAccess 策略仅授予访问 AWS Service Catalog 最终用户控制台视图所需的最低 IAM 权限。

借助使用启动约束,您可以遵循 IAM 最佳实践,将最终用户 IAM 权限保持在最低限度。有关更多信息,请参阅《IAM 用户指南》中的授予最低权限

添加启动约束
  1. 遵照 IAM 用户指南在 JSON 选项卡上创建新策略的说明。

  2. 在 JSON 策略文档中,粘贴以下内容:

    • cloudformation— 允许 AWS Service Catalog 创建、读取、更新、删除、列出和标记 AWS CloudFormation 堆栈的完全权限。

    • ec2— 允许 AWS Service Catalog 列出、读取、写入、预配置和标记作为 AWS Service Catalog 产品一部分的 Amazon Elastic Compute Cloud (Amazon EC2) 资源的全部权限。根据您要部署的 AWS 资源,此权限可能会发生更改。

    • ec2— 为您的 AWS 账户创建新的托管策略,并将指定的托管策略附加到指定的 IAM 角色。

    • s3— 允许对 AWS Service Catalog 拥有的 Amazon S3 存储桶的访问权限。要部署产品,AWS Service Catalog 需要预配置构件的访问权限。

    • servicecatalog— 允许 AWS Service Catalog 拥有代表最终用户列出、读取、写入、标记和启动资源的权限。

    • sns— 允许 AWS Service Catalog 拥有列出、读取、写入和标记启动约束 Amazon SNS 主题的权限。

    注意

    根据您要部署的基础资源,您可能需要修改示例 JSON 策略。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:GetTemplateSummary", "cloudformation:SetStackPolicy", "cloudformation:ValidateTemplate", "cloudformation:UpdateStack", "ec2:*", "servicecatalog:*", "sns:*" ], "Resource": "*" }, { "Effect":"Allow", "Action":[ "s3:GetObject" ], "Resource":"*", "Condition":{ "StringEquals":{ "s3:ExistingObjectTag/servicecatalog:provisioning":"true" } } } ] }
  3. 请选择下一步标签

  4. 选择下一步,审核

  5. 查看策略页面上,输入 linuxDesktopPolicy 作为名称

  6. 选择创建策略

  7. 在导航窗格中,选择角色。然后选择创建角色并执行以下操作:

    1. 对于选择可信实体,选择 AWS 服务,然后在其他 AWS 服务的用例下选择 Service Catalog。选择 Service Catalog 用例,然后选择下一步

    2. 搜索linuxDesktopPolicy策略,然后选中该复选框。

    3. 请选择 Next(下一步)

    4. 对于角色名称,键入 linuxDesktopLaunchRole

    5. 选择创建角色

  8. 打开AWS Service Catalog控制台,网址为 https://console.aws.amazon.com/servicecatalog

  9. 选择 Engineering Tools 产品组合。

  10. 产品组合详细信息页面上,选择约束选项卡,然后选择创建约束

  11. 对于产品,选择 Linux Desktop,对于约束类型,选择启动

  12. 请选择选择 IAM 角色。接下来选择 “linuxDesktopLaunch角色”,然后选择 “创建”。