AWS Systems Manager
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 Approvers 运行 Automation 工作流程

以下过程介绍如何使用简单执行运行包含审批的 AWS Systems Manager Automation 工作流程。此工作流程使用 Automation 操作 aws:approve,并会临时暂停自动化执行,直至指定委托人批准或拒绝操作。此执行工作流程在当前的 AWS Identity and Access Management (IAM) 用户的环境中运行。这意味着只要您有权运行 Automation 文档和此文档调用的任何操作,就无需配置其他 IAM 权限。如果您在 IAM 中拥有管理员权限,则已有权运行此 Automation 工作流程。

注意

有关如何运行使用 IAM 服务角色或更高级的委托管理形式的 Automation 工作流程的信息,请参阅使用不同的安全模型运行 Automation 工作流程

开始前的准备工作

除了 Automation 文档所需的标准输入外,aws:approve 操作还需要以下两个参数:

  • 审批者列表。审批者列表必须以 IAM 用户或用户 ARN 形式包含至少一个审批者。如果提供了多个审批者,还必须在自动化文档内指定对应的最少审批数。

  • Amazon Simple Notification Service (Amazon SNS) 主题 ARN。Amazon SNS 主题名称必须以 Automation 开头。

此过程假设您已经创建了 Amazon SNS 主题,这是提交审批请求所必需的。有关信息,请参阅 Amazon Simple Notification Service Developer Guide 中的创建主题

使用 Approvers 运行 Automation 工作流程(控制台)

使用 Approvers 运行 Automation 工作流程

  1. 通过以下网址打开 AWS Systems Manager 控制台:https://console.amazonaws.cn/systems-manager/

  2. 在导航窗格中,选择 Automation (自动化),然后选择 Execute automation (执行自动化)

  3. 自动化文档列表中,选择文档名称旁边的选项。要查看更多 Automation 文档,请使用搜索栏或搜索栏右侧的数字。

    注意

    可以通过选择文档名称来查看有关文档的信息。

  4. Document details (文档详细信息) 部分中,验证文档版本已设置为要运行的版本。系统包括以下版本选项:

    • Default version at runtime (运行时的默认版本):如果定期更新 Automation 文档并指定新的默认版本,请选择此选项。

    • 运行时的最新版本:如果定期更新自动化文档,并且需要运行最新更新版本,请选择此选项。

    • 1 (默认):选择此选项可运行文档的第一个版本,这是默认设置。

  5. 选择 Next

  6. Execute automation document (执行自动化文档) 页面上,选择 Simple execution (简单执行)

  7. Input parameters (输入参数) 部分,指定所需的输入参数。

    例如,如果选择了 AWS-StartEC2InstanceWithApproval 文档,则必须为 InstanceId 参数指定或选择实例 ID。

  8. Approvers 部分,指定自动化操作的审批者的 IAM 用户或用户 ARN。

  9. SNSTopicARN 部分,指定要用于发送审批通知的 SNS 主题 ARN。SNS 主题名称必须以 Automation 开头。

  10. (可选)您可以从 AutomationAssumeRole 列表中选择一个 IAM 服务角色。

  11. 选择 Execute automation (执行自动化)

指定的审批者将收到包含详细信息的 Amazon SNS 通知以批准或拒绝自动化工作流程。此审批操作从发布之日起 7 天内有效,此操作可以使用 Systems Manager 控制台或 AWS Command Line Interface (AWS CLI) 发布。

如果您选择了审批自动化工作流程,工作流程将继续运行指定的 Automation 文档中包含的步骤。控制台将显示 Automation 执行的状态。如果 Automation 无法运行,请参阅 排除 Systems Manager Automation 的故障 获取常见问题的提示。

批准或拒绝 Automation 工作流程

  1. 通过以下网址打开 AWS Systems Manager 控制台:https://console.amazonaws.cn/systems-manager/

  2. 在导航窗格中,选择 Automation,然后选择上一过程中运行的自动化工作流程。

  3. 选择 Actions (操作),然后选择 Approve/Deny (批准/拒绝)

  4. 选择 Approve (批准)Deny (拒绝),并选择性地提供注释。

  5. 选择 Submit

使用 Approvers (AWS CLI) 运行 Automation 工作流程

使用 Approvers 运行 Automation 工作流程

  • 运行以下命令来使用 Approvers 运行 Automation 工作流程在文档名称部分,指定包括 Automation 操作 aws:approve 的 Automation 文档。

    对于 Approvers,指定此操作的审批者的 IAM 用户或用户 ARN。对于 SNSTopic,指定用于发送审批通知的 SNS 主题 ARN。SNS 主题名称必须以 Automation 开头。

    注意

    审批者的参数值的确切名称和 SNS 主题取决于您选择的文档内指定的值。

    aws ssm start-automation-execution --document-name "AWS-StartEC2InstanceWithApproval" --parameters "InstanceId=i-1234567890abcdef0,Approvers=arn:aws:iam::123456789012:role/Administrator,SNSTopicArn=arn:aws:sns:us-east-1:123456789012:AutomationApproval"

批准 Automation 工作流程

  • 运行以下命令来批准 Automation 工作流程。

    aws ssm send-automation-signal --automation-execution-id "4105a4fc-f944-11e6-9d32-0123456789ab" --signal-type "Approve" --payload "Comment=Replace_This_With_Approve_Comment"

拒绝 Automation 工作流程

  • 运行以下命令来拒绝 Automation 工作流程。

    aws ssm send-automation-signal --automation-execution-id "4105a4fc-f944-11e6-9d32-0123456789ab" --signal-type "Deny" --payload "Comment=Replace_This_With_Deny_Comment"