通过使用 CloudFormation 为 Automation 创建服务角色
您可以通过 AWS CloudFormation 模板为 Automation(AWS Systems Manager 中的一项工具)创建一个服务角色。创建服务角色后,可以使用参数 AutomationAssumeRole 在运行手册中指定服务角色。
使用 CloudFormation 创建服务角色
使用 CloudFormation,通过以下过程为 Systems Manager 自动化创建所需的 AWS Identity and Access Management (IAM) 角色。
创建所需的 IAM 角色
-
下载并解压缩
AWS-SystemsManager-AutomationServiceRole.zip文件。此文件夹包含AWS-SystemsManager-AutomationServiceRole.yamlCloudFormation 模板文件。 通过以下网址打开 CloudFormation 控制台:https://console.aws.amazon.com/cloudformation
。 -
选择创建堆栈。
-
在指定模板部分,选择上传模板文件。
-
选择浏览,然后选择
AWS-SystemsManager-AutomationServiceRole.yamlCloudFormation 模板文件。 -
选择下一步。
-
在指定堆栈详细信息页面的堆栈名称字段中,输入名称。
-
在配置堆栈选项页面上,您无需进行任何选择。选择下一步。
-
在审核页面上,向下滚动并选择我确认 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 服务。
复制自动化的角色信息
使用以下过程从 CloudFormation 控制台复制关于自动化服务角色的信息。当您使用运行手册时,必须指定这些角色。
注意
如果您运行 AWS-UpdateLinuxAmi 或 AWS-UpdateWindowsAmi 运行手册,则无需使用此过程来复制角色信息。这些运行手册已将必需角色指定为默认值。这些运行手册中指定的角色使用 IAM 托管式策略。
复制角色名称
通过以下网址打开 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。