通过使用 AWS CloudFormation 为 Automation 创建服务角色
您可以通过 AWS CloudFormation 模板为 AWS Systems Manager 的功能自动化创建一个服务角色。创建服务角色后,可以使用参数 AutomationAssumeRole
在运行手册中指定服务角色。
使用 AWS CloudFormation 创建服务角色
使用 AWS CloudFormation,通过以下过程为 Systems Manager 自动化创建所需的 AWS Identity and Access Management (IAM) 角色。
创建所需的 IAM 角色
-
下载并解压缩
AWS-SystemsManager-AutomationServiceRole.zip
文件。此文件夹包含AWS-SystemsManager-AutomationServiceRole.yaml
AWS CloudFormation 模板文件。 打开 AWS CloudFormation 控制台,地址:https://console.aws.amazon.com/cloudformation
。 -
选择创建堆栈。
-
在指定模板部分,选择上传模板文件。
-
选择浏览,然后选择
AWS-SystemsManager-AutomationServiceRole.yaml
AWS CloudFormation 模板文件。 -
选择下一步。
-
在指定堆栈详细信息页面的堆栈名称字段中,输入名称。
-
在配置堆栈选项页面上,您无需进行任何选择。选择下一步。
-
在审核页面上,向下滚动并选择我确认 AWS CloudFormation 可能创建 IAM 资源选项。
-
选择创建。
大约三分钟左右,CloudFormation 会显示 CREATE_IN_PROGRESS 状态。创建堆栈并且您的角色准备好使用之后,状态会变为 CREATE_COMPLETE。
重要
如果您运行使用 AWS Identity and Access Management (IAM) 服务角色调用其他服务的自动化工作流程,请注意必须使用权限将该服务角色配置为调用这些服务。该要求适用于所有 AWS 自动化运行手册(AWS-*
运行手册),例如 AWS-ConfigureS3BucketLogging
、AWS-CreateDynamoDBBackup
和 AWS-RestartEC2Instance
运行手册等。对于您创建的任何自定义自动化运行手册,如果这些文档使用调用其他服务的操作来调用其他 AWS 服务,则此要求同样适用。例如,如果使用 aws:executeAwsApi
、aws:createStack
或 aws:copyImage
操作,则您必须配置具有权限的服务角色来调用这些服务。您可以将 IAM 内联策略添加到该角色,从而向其他 AWS 服务授予权限。有关更多信息,请参阅 (可选)添加自动化内联策略或客户管理型策略来调用其他 AWS 服务。
复制自动化的角色信息
使用以下过程从 AWS CloudFormation 控制台复制关于自动化服务角色的信息。当您使用运行手册时,必须指定这些角色。
注意
如果您运行 AWS-UpdateLinuxAmi
或 AWS-UpdateWindowsAmi
运行手册,则无需使用此过程来复制角色信息。这些运行手册已将必需角色指定为默认值。这些运行手册中指定的角色使用 IAM 托管式策略。
复制角色名称
打开 AWS CloudFormation 控制台,地址:https://console.aws.amazon.com/cloudformation
。 -
选择您在前一个过程中创建的自动化 Stack name (堆栈名称)。
-
选择资源选项卡。
-
选择 AutomationServiceRole 的物理 ID 链接 IAM 控制台将打开并显示自动化服务角色的摘要。
-
复制角色 ARN 旁边的 Amazon Resource Name (ARN)。该 ARN 类似于以下这样:
arn:aws:iam::12345678:role/AutomationServiceRole
。 -
将 ARN 粘贴到文本文件供以后使用。
您已完成了为自动化配置服务角色。现在,您可在运行手册中使用自动化服务角色 ARN。