为 Change Manager 配置角色和权限 - Amazon Systems Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

为 Change Manager 配置角色和权限

默认情况下,Change Manager 没有对您的资源执行操作的权限。您必须使用 Amazon Identity and Access Management (IAM) 服务角色或担任角色授予访问权限。该角色可以让 Change Manager 代表您安全地运行在批准的更改请求中指定的运行手册工作流。该角色向 Amazon Security Token Service (Amazon STS) AssumeRole 授予对 Change Manager 的信任。

通过向角色提供这些权限以代表企业中的用户行事,用户本身不需要被授予该权限数组。权限允许的操作仅限于批准的操作。

当您的账户或企业中的用户创建更改请求时,他们可以选择此担任角色来执行更改操作。

您可以为 Change Manager 创建新的担任角色,也可以利用所需的权限更新现有角色。

如果您需要为 Change Manager 创建一个服务角色,请完成以下任务。

任务 1:为 Change Manager 创建担任角色策略

使用以下过程创建将附加到您的 Change Manager 担任角色的策略。

为 Change Manager 创建担任角色策略

  1. 访问:https://console.aws.amazon.com/iam/,打开 IAM 控制台。

  2. 在导航窗格中选择 Policies,然后选择 Create Policy

  3. Create policy(创建策略)页面上,选择 JSON 选项卡,将默认内容替换为以下内容,您将在以下步骤中针对自己的 Change Manager 操作对其进行修改。

    注意

    如果要创建用于单个 Amazon Web Services 账户 的策略,而不是具有多个账户和 Amazon Web Services 区域 的企业,则可以省略第一个数据块。对于使用 Change Manager 的单个账户,不需要 iam:PassRole 权限。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::delegated-admin-account-id:role/AWS-SystemsManager-job-functionAdministrationRole", "Condition": { "StringEquals": { "iam:PassedToService": "ssm.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:DescribeDocument", "ssm:GetDocument", "ssm:StartChangeRequestExecution" ], "Resource": [ "arn:aws:ssm:region:account-id:automation-definition/template-name:$DEFAULT", "arn:aws:ssm:region::document/template-name" ] }, { "Effect": "Allow", "Action": [ "ssm:ListOpsItemEvents", "ssm:GetOpsItem", "ssm:ListDocuments", "ssm:DescribeOpsItems" ], "Resource": "*" } ] }
  4. 对于 iam:PassRole 操作,更新 Resource 值以包括为您的企业定义的所有工作职能的 ARN,您希望对这些工作职能授予启动运行手册工作流的权限。

  5. regionaccount-idtemplate-namedelegated-admin-account-idjob-function 占位符替换为 Change Manager 操作的值。

  6. 对于第二个 Resource 语句,修改列表以包括要授予权限的所有更改模板。或者,指定 "Resource": "*" 为企业中的所有更改模板授予权限。

  7. 请选择下一步:标签

  8. (可选)添加一个或多个标签键值对,以组织、跟踪或控制此策略的访问权限。

  9. 选择 Next: Review(下一步: 审核)

  10. Review policy(查看策略)页面上的 Name(名称)框中输入一个名称,例如 MyChangeManagerAssumeRole,然后输入可选描述。

  11. 选择 Create policy(创建策略),然后继续转至 任务 2:为 Change Manager 创建担任角色

任务 2:为 Change Manager 创建担任角色

使用以下过程为 Change Manager 创建 Change Manager 担任角色(一种服务角色类型)。

为 Change Manager 创建担任角色

  1. 访问:https://console.aws.amazon.com/iam/,打开 IAM 控制台。

  2. 在导航窗格中,选择 Roles (角色),然后选择 Create role (创建角色)

  3. 对于 Select trusted entity(选择可信实体),完成以下选择:

    1. 对于 Trusted entity type(可信实体类型),选择 Amazon service(Amazon 服务)。

    2. 对于 Use cases for other Amazon Web Services(其他 Amazon Web Services的使用案例),选择 Systems Manager

    3. 选择 Systems Manager

  4. 选择 Next (下一步)

  5. Attached permissions policy(附加的权限策略)页面上,搜索您在 任务 1:为 Change Manager 创建担任角色策略 中创建的担任角色策略,比如 MyChangeManagerAssumeRole

  6. 选中担任角色策略名称旁边的复选框,然后选择 Next: Tags(下一步:标签)。

  7. 对于Role name(角色名称),请输入新实例配置文件的名称,例如 MyChangeManagerAssumeRole

  8. (可选)对于 Description(描述),更新该实例角色的描述。

  9. (可选)添加一个或多个标签键值对,以组织、跟踪或控制此角色的访问权限。

  10. 选择 Next: Review(下一步: 审核)

  11. (可选)对于 Tags(标签),添加一个或多个标签键值对,以组织、跟踪或控制此角色的访问,然后选择 Create role(创建角色)。系统将让您返回到 Roles (角色) 页面。

  12. 选择 Create role (创建角色)。系统将让您返回到 Roles (角色) 页面。

  13. 角色页面中,选择刚刚创建的角色以打开摘要页面。

任务 3:将 iam:PassRole 策略附加到其他角色

使用以下过程将 iam:PassRole 策略附加到 IAM 实例配置文件或 IAM 服务角色。(Systems Manager 服务使用 IAM 实例配置文件与 EC2 实例进行通信。对于本地部署实例或虚拟机 (VM) 或混合实例,则会使用 IAM 服务角色。)

通过附加 iam:PassRole 策略,Change Manager 服务可以在运行运行手册工作流时将担任角色权限传递给其他服务或 Systems Manager 功能。

iam:PassRole 策略附加到 IAM 实例配置文件或混合实例的服务角色

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Roles(角色)。

  3. 搜索您创建的 Change Manager 担任角色(如 MyChangeManagerAssumeRole),然后选择其名称。

  4. 在担任角色的 Summary(摘要)页面中,选择 Permissions(权限)选项卡。

  5. 选择 Add permissions, Create inline policy(添加权限、创建内联策略)。

  6. Create policy (创建策略) 页面上,选择 Visual editor (可视化编辑器) 选项卡。

  7. 选择服务,然后选择 IAM

  8. Filter actions(筛选操作)文本框中,输入 PassRole,然后选择 PassRole 选项。

  9. 展开 Resources(资源)。确保已选择特定,然后选择添加 ARN

  10. Specify ARN for role(为角色指定 ARN)字段中,输入要向其传递担任角色权限的 IAM 实例配置文件角色或 IAM 服务角色的 ARN。系统会自动填充账户具有路径的角色名称字段。

  11. 选择 Add (添加)

  12. 选择Review policy(查看策略)

  13. 对于 Name(名称),输入一个名称来标识此策略,然后选择 Create policy(创建策略)。

任务 4:向担任角色添加内联策略以调用其他 Amazon Web Services

当更改请求使用 Change Manager 代入角色调用其他 Amazon Web Services时,必须为代入角色配置调用这些服务的权限。此要求适用于可能在更改请求中使用的所有 Amazon 自动化运行手册(AWS-* 运行手册),例如 AWS-ConfigureS3BucketLoggingAWS-CreateDynamoDBBackupAWS-RestartEC2Instance 运行手册。对于您创建的任何自定义运行手册,如果这些文档使用调用其他服务的操作来调用其他 Amazon Web Services,则此要求同样适用。例如,如果您使用 aws:executeAwsApiaws:CreateStackaws:copyImage 操作,则您必须配置具有权限的服务角色来调用这些服务。您可以通过将 IAM 内联策略添加到角色以向其他 Amazon Web Services授予权限。

将内联策略添加到代入角色以调用其他 Amazon Web Services(IAM 控制台)

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

  2. 在导航窗格中,选择角色

  3. 在列表中,选择要更新的担任角色的名称,例如 MyChangeManagerAssumeRole

  4. 请选择 Permissions 选项卡。

  5. 选择 Add permissions, Create inline policy(添加权限、创建内联策略)。

  6. 请选择 JSON 选项卡。

  7. 输入您希望调用的 Amazon Web Services的 JSON 策略文档。以下是两个示例 JSON 策略文档。

    Simple Storage Service (Amazon S3) PutObjectGetObject 示例

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" } ] }

    Amazon EC2 CreateSnapshotDescribeSnapShots 示例

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"*" }, { "Effect":"Allow", "Action":"ec2:DescribeSnapshots", "Resource":"*" } ] }

    有关 IAM policy 语言的详细信息,请参阅《IAM 用户指南》中的 IAM JSON 策略参考

  8. 完成后,选择查看策略策略验证程序将报告任何语法错误。

  9. 对于 Name(名称),输入一个名称来标识您创建的策略。查看策略摘要以查看您的策略授予的权限。然后,选择创建策略以保存您的工作。

  10. 创建内联策略后,它会自动嵌入您的角色。

任务 5:配置用户对 Change Manager 的访问权限

如果已为您的 IAM 用户账户、组或角色分配管理员权限,则您可以访问 Change Manager。如果您没有管理员权限,则管理员必须通过向您的 IAM 账户、组或角色分配 AmazonSSMFullAccess 托管式策略或提供类似权限的策略来向您授予权限。

使用以下过程配置用户账户,以使用 Change Manager。您选择的用户账户会拥有配置并运行 Change Manager 的权限。如果您需要创建新的用户账户,请参阅 IAM 用户指南中的在您的 Amazon Web Services 账户中创建 IAM 用户

配置用户访问权限并将 iam:PassRole 策略附加到用户账户

  1. 在 IAM 导航窗格中,选择用户,然后选择要配置的用户账户。

  2. Permissions(权限)选项卡上的策略列表中,验证其中是否列出了 AmazonSSMFullAccess 策略或者授予账户访问 Systems Manager 权限的类似策略。

  3. 选择 Add inline policy(添加内联策略)。

  4. Create policy(创建策略)页面的 Visual editor(可视化编辑器)选项卡上,选择 Choose a service(选择服务)。

  5. Amazon Services(Amazon 服务)中,选择 IAM

  6. 对于 Actions(操作),在 Filter actions(筛选操作)提示中输入 PassRole,然后选择 PassRole

  7. 展开 Resources(资源)部分,选择 Add ARN(添加 ARN),粘贴您在 任务 2:为 Change Manager 创建担任角色 结束时复制的 Change Manager 代入角色的 ARN,然后选择 Add(添加)。

  8. 选择Review policy(查看策略)

  9. 对于 Name(名称),输入一个名称来标识该策略,然后选择 Create policy(创建策略)。

您已完成了为 Change Manager 配置所需的角色。您现在可以在 Change Manager 操作中使用 Change Manager 担任角色 ARN。