以当前经过身份验证的用户身份运行自动化 - AWS Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

以当前经过身份验证的用户身份运行自动化

以下过程介绍了如何使用 AWS Identity and Access Management 控制台和 IAM (AWS Systems Manager) 运行在当前 AWS Command Line Interface (AWS CLI) 用户上下文中运行的自动化。在当前 IAM 用户的上下文中运行自动化意味着,只要 IAM 用户有权使用运行手册和运行手册调用的任何操作,您就不需要配置额外的 IAM 权限。如果 IAM 用户在 IAM 中具有管理员权限,则您有权使用此运行手册。

以当前经过身份验证的用户身份运行自动化(控制台)

以下过程介绍了如何使用 Systems Manager 控制台以当前经过身份验证的用户身份运行自动化。

以当前经过身份验证的用户身份使用运行手册

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

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

  3. Automation document (自动化文档) 列表中,选择一个文档。在 Document categories (文档类别) 窗格中选择一个或多个选项,以根据其用途筛选 SSM 文档。要查看您拥有的文档,请选择 Owned by me (我拥有的) 选项卡。要查看与您的账户共享的文档,请选择 Shared with me (与我共享) 选项卡。要查看所有文档,请选择 All documents (所有文档) 选项卡。

    注意

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

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

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

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

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

  5. 选择 Next

  6. 执行模式部分中,选择简单执行.

    注意

    此过程使用简单执行模式。不过,您也可以选择 Rate control (速率控制)Manual execution (手动执行),并以当前经过身份验证的用户身份运行自动化。

  7. Input parameters (输入参数) 部分中,指定所需的输入。要以当前经过身份验证的用户身份运行自动化,请勿为 AutomationAssumeRole 值指定 IAM 服务角色。

  8. 选择 Execute (执行). 控制台将显示自动化的状态。

以当前经过身份验证的用户身份运行自动化(命令行)

以下过程介绍了如何使用 AWS CLI(在 Linux 或 Windows 上)或 适用于 PowerShell 的 AWS 工具 以当前经过身份验证的用户身份运行自动化。

以当前经过身份验证的用户身份运行自动化

  1. 安装并配置 AWS CLI 或 适用于 PowerShell 的 AWS 工具(如果尚未执行该操作)。

    有关信息,请参阅安装或升级 AWS 命令行工具

  2. 运行以下命令以作为当前经过身份验证的用户身份启动自动化。

    Linux
    aws ssm start-automation-execution \ --document-name RunbookName \ --parameters ParametersRequiredByRunbook
    Windows
    aws ssm start-automation-execution ^ --document-name RunbookName ^ --parameters ParametersRequiredByRunbook
    PowerShell
    Start-SSMAutomationExecution ` -DocumentName RunbookName ` -Parameter ParametersRequiredByRunbook

    以下是使用运行手册 AWS-RestartEC2Instance 重新启动指定 EC2 实例的示例。

    Linux
    aws ssm start-automation-execution \ --document-name "AWS-RestartEC2Instance" \ --parameters "InstanceId=i-1234567890abcdef0"
    Windows
    aws ssm start-automation-execution ^ --document-name "AWS-RestartEC2Instance" ^ --parameters "InstanceId=i-1234567890abcdef0"
    PowerShell
    Start-SSMAutomationExecution ` -DocumentName AWS-RestartEC2Instance ` -Parameter @{"InstanceId"="i-1234567890abcdef0"}

    系统将返回类似于以下内容的信息。

    Linux
    {
        "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab"
    }
    Windows
    {
        "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab"
    }
    PowerShell
    4105a4fc-f944-11e6-9d32-0123456789ab
  3. 运行以下命令以检索自动化的状态。

    Linux
    aws ssm describe-automation-executions \ --filter "Key=ExecutionId,Values=4105a4fc-f944-11e6-9d32-0123456789ab"
    Windows
    aws ssm describe-automation-executions ^ --filter "Key=ExecutionId,Values=4105a4fc-f944-11e6-9d32-0123456789ab"
    PowerShell
    Get-SSMAutomationExecutionList | ` Where {$_.AutomationExecutionId -eq "4105a4fc-f944-11e6-9d32-0123456789ab"}

    系统将返回类似于以下内容的信息。

    Linux
    {
        "AutomationExecutionMetadataList": [
            {
                "AutomationExecutionStatus": "InProgress",
                "CurrentStepName": "stopInstances",
                "Outputs": {},
                "DocumentName": "AWS-RestartEC2Instance",
                "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab",
                "DocumentVersion": "1",
                "ResolvedTargets": {
                    "ParameterValues": [],
                    "Truncated": false
                },
                "AutomationType": "Local",
                "Mode": "Auto",
                "ExecutionStartTime": 1564600648.159,
                "CurrentAction": "aws:changeInstanceState",
                "ExecutedBy": "arn:aws:sts::123456789012:assumed-role/Administrator/Admin",
                "LogFile": "",
                "Targets": []
            }
        ]
    }
    Windows
    {
        "AutomationExecutionMetadataList": [
            {
                "AutomationExecutionStatus": "InProgress",
                "CurrentStepName": "stopInstances",
                "Outputs": {},
                "DocumentName": "AWS-RestartEC2Instance",
                "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab",
                "DocumentVersion": "1",
                "ResolvedTargets": {
                    "ParameterValues": [],
                    "Truncated": false
                },
                "AutomationType": "Local",
                "Mode": "Auto",
                "ExecutionStartTime": 1564600648.159,
                "CurrentAction": "aws:changeInstanceState",
                "ExecutedBy": "arn:aws:sts::123456789012:assumed-role/Administrator/Admin",
                "LogFile": "",
                "Targets": []
            }
        ]
    }
    PowerShell
    AutomationExecutionId       : 4105a4fc-f944-11e6-9d32-0123456789ab
    AutomationExecutionStatus   : InProgress
    AutomationType              : Local
    CurrentAction               : aws:changeInstanceState
    CurrentStepName             : startInstances
    DocumentName                : AWS-RestartEC2Instance
    DocumentVersion             : 1
    ExecutedBy                  : arn:aws:sts::123456789012:assumed-role/Administrator/Admin
    ExecutionEndTime            : 1/1/0001 12:00:00 AM
    ExecutionStartTime          : 7/31/2019 7:17:28 PM
    FailureMessage              : 
    LogFile                     : 
    MaxConcurrency              : 
    MaxErrors                   : 
    Mode                        : Auto
    Outputs                     : {}
    ParentAutomationExecutionId : 
    ResolvedTargets             : Amazon.SimpleSystemsManagement.Model.ResolvedTargets
    Target                      : 
    TargetMaps                  : {}
    TargetParameterName         : 
    Targets                     : {}