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

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

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

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

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

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

将 Runbook 用作当前经过身份验证的用户

  1. 访问 https://console.aws.amazon.com/systems-manager/,打开 Amazon Systems Manager 控制台。

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

  3. 自动化文档列表中,选择 Runbook。在文档类别窗格可根据 SSM 文档的用途过滤它们。要查看您拥有的 Runbook,请选择我拥有的选项卡。要查看与您的帐户共享的 Runbook,请选择与我共享选项卡。要查看所有运行手册,请选择所有文档选项卡。

    注意

    可以通过选择一个运行手册名称来查看有关该手册的信息。

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

    • 运行时默认版本:如果定期更新 Automation Runbook 并指定新的默认版本,请选择此选项。

    • 运行时最新版本:如果定期更新 Automation 运行簿,并且需要运行最新更新版本,请选择此选项。

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

  5. 选择 Next (下一步)

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

    注意

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

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

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

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

以下过程介绍如何使用Amazon CLI(在 Linux 或 Windows 上)或Amazon Tools for PowerShell以当前经过身份验证的用户身份运行自动化。

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

  1. 安装和配置Amazon CLI或Amazon Tools for PowerShell(如果您尚未安装)。

    想要了解有关信息,请参阅安装或升级Amazon命令行工具.

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

    Linux & macOS
    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

    下面是 Runbook 的使用示例AWS-RestartEC2Instance重新启动指定的 Amazon Elastic Compute Cloud (Amazon EC2) 实例。

    Linux & macOS
    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 & macOS
    {
        "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab"
    }
    Windows
    {
        "AutomationExecutionId": "4105a4fc-f944-11e6-9d32-0123456789ab"
    }
    PowerShell
    4105a4fc-f944-11e6-9d32-0123456789ab
  3. 运行以下命令之一以检索 Automation 的状态。

    Linux & macOS
    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 & macOS
    {
        "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                     : {}