Exemplos do Systems Manager usando o Tools for PowerShell - AWS Exemplos de código do SDK

Há mais exemplos de AWS SDK disponíveis no repositório AWS Doc SDK Examples GitHub .

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos do Systems Manager usando o Tools for PowerShell

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o Ferramentas da AWS para PowerShell with Systems Manager.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar Add-SSMResourceTag.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atualiza uma janela de manutenção com novas tags. Não haverá saída se o comando for bem-sucedido. A sintaxe usada neste exemplo requer a PowerShell versão 3 ou posterior.

$option1 = @{Key="Stack";Value=@("Production")} Add-SSMResourceTag -ResourceId "mw-03eb9db42890fb82d" -ResourceType "MaintenanceWindow" -Tag $option1

Exemplo 2: Com a PowerShell versão 2, você deve usar New-Object para criar cada tag. Não haverá saída se o comando for bem-sucedido.

$tag1 = New-Object Amazon.SimpleSystemsManagement.Model.Tag $tag1.Key = "Stack" $tag1.Value = "Production" Add-SSMResourceTag -ResourceId "mw-03eb9db42890fb82d" -ResourceType "MaintenanceWindow" -Tag $tag1
  • Para obter detalhes da API, consulte AddTagsToResourceem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Edit-SSMDocumentPermission.

Ferramentas para PowerShell

Exemplo 1: esse exemplo adiciona permissões de "compartilhamento" a todas as contas para um documento. Não haverá saída se o comando for bem-sucedido.

Edit-SSMDocumentPermission -Name "RunShellScript" -PermissionType "Share" -AccountIdsToAdd all

Exemplo 2: esse exemplo adiciona permissões de "compartilhamento" a uma conta específica para um documento. Não haverá saída se o comando for bem-sucedido.

Edit-SSMDocumentPermission -Name "RunShellScriptNew" -PermissionType "Share" -AccountIdsToAdd "123456789012"
  • Para obter detalhes da API, consulte ModifyDocumentPermissionem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMActivation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo fornece detalhes sobre as ativações em sua conta.

Get-SSMActivation

Saída:

ActivationId : 08e51e79-1e36-446c-8e63-9458569c1363 CreatedDate : 3/1/2017 12:01:51 AM DefaultInstanceName : MyWebServers Description : ExpirationDate : 3/2/2017 12:01:51 AM Expired : False IamRole : AutomationRole RegistrationLimit : 10 RegistrationsCount : 0
  • Para obter detalhes da API, consulte DescribeActivationsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMAssociation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo descreve a associação entre uma instância e um documento.

Get-SSMAssociation -InstanceId "i-0000293ffd8c57862" -Name "AWS-UpdateSSMAgent"

Saída:

Name : AWS-UpdateSSMAgent InstanceId : i-0000293ffd8c57862 Date : 2/23/2017 6:55:22 PM Status.Name : Pending Status.Date : 2/20/2015 8:31:11 AM Status.Message : temp_status_change Status.AdditionalInfo : Additional-Config-Needed
  • Para obter detalhes da API, consulte DescribeAssociationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMAssociationExecution.

Ferramentas para PowerShell

Exemplo 1: esse exemplo retorna as execuções para o ID de associação fornecido

Get-SSMAssociationExecution -AssociationId 123a45a0-c678-9012-3456-78901234db5e

Saída:

AssociationId : 123a45a0-c678-9012-3456-78901234db5e AssociationVersion : 2 CreatedTime : 3/2/2019 8:53:29 AM DetailedStatus : ExecutionId : 123a45a0-c678-9012-3456-78901234db5e LastExecutionDate : 1/1/0001 12:00:00 AM ResourceCountByStatus : {Success=4} Status : Success

O código de exemplo a seguir mostra como usar Get-SSMAssociationExecutionTarget.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe o ID do recurso e seu status de execução que fazem parte dos destinos de execução da associação

Get-SSMAssociationExecutionTarget -AssociationId 123a45a0-c678-9012-3456-78901234db5e -ExecutionId 123a45a0-c678-9012-3456-78901234db5e | Select-Object ResourceId, Status

Saída:

ResourceId Status ---------- ------ i-0b1b2a3456f7a890b Success i-01c12a45d6fc7a89f Success i-0a1caf234f56d7dc8 Success i-012a3fd45af6dbcfe Failed i-0ddc1df23c4a5fb67 Success

Exemplo 2: esse comando verifica a execução específica de uma automação específica desde ontem, onde documento de comandos está associado. Além disso, ele verifica se a execução da associação falhou e, em caso afirmativo, exibie os detalhes da invocação do comando para a execução junto com o ID da instância

$AssociationExecution= Get-SSMAssociationExecutionTarget -AssociationId 1c234567-890f-1aca-a234-5a678d901cb0 -ExecutionId 12345ca12-3456-2345-2b45-23456789012 | Where-Object {$_.LastExecutionDate -gt (Get-Date -Hour 00 -Minute 00).AddDays(-1)} foreach ($execution in $AssociationExecution) { if($execution.Status -ne 'Success'){ Write-Output "There was an issue executing the association $($execution.AssociationId) on $($execution.ResourceId)" Get-SSMCommandInvocation -CommandId $execution.OutputSource.OutputSourceId -Detail:$true | Select-Object -ExpandProperty CommandPlugins } }

Saída:

There was an issue executing the association 1c234567-890f-1aca-a234-5a678d901cb0 on i-0a1caf234f56d7dc8 Name : aws:runPowerShellScript Output : ----------ERROR------- failed to run commands: exit status 1 OutputS3BucketName : OutputS3KeyPrefix : OutputS3Region : eu-west-1 ResponseCode : 1 ResponseFinishDateTime : 5/29/2019 11:04:49 AM ResponseStartDateTime : 5/29/2019 11:04:49 AM StandardErrorUrl : StandardOutputUrl : Status : Failed StatusDetails : Failed

O código de exemplo a seguir mostra como usar Get-SSMAssociationList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as associações para uma instância. A sintaxe usada neste exemplo requer a PowerShell versão 3 ou posterior.

$filter1 = @{Key="InstanceId";Value=@("i-0000293ffd8c57862")} Get-SSMAssociationList -AssociationFilterList $filter1

Saída:

AssociationId : d8617c07-2079-4c18-9847-1655fc2698b0 DocumentVersion : InstanceId : i-0000293ffd8c57862 LastExecutionDate : 2/20/2015 8:31:11 AM Name : AWS-UpdateSSMAgent Overview : Amazon.SimpleSystemsManagement.Model.AssociationOverview ScheduleExpression : Targets : {InstanceIds}

Exemplo 2: esse exemplo lista todas as associações para um documento de configuração. A sintaxe usada neste exemplo requer a PowerShell versão 3 ou posterior.

$filter2 = @{Key="Name";Value=@("AWS-UpdateSSMAgent")} Get-SSMAssociationList -AssociationFilterList $filter2

Saída:

AssociationId : d8617c07-2079-4c18-9847-1655fc2698b0 DocumentVersion : InstanceId : i-0000293ffd8c57862 LastExecutionDate : 2/20/2015 8:31:11 AM Name : AWS-UpdateSSMAgent Overview : Amazon.SimpleSystemsManagement.Model.AssociationOverview ScheduleExpression : Targets : {InstanceIds}

Exemplo 3: Com a PowerShell versão 2, você deve usar New-Object para criar cada filtro.

$filter1 = New-Object Amazon.SimpleSystemsManagement.Model.AssociationFilter $filter1.Key = "InstanceId" $filter1.Value = "i-0000293ffd8c57862" Get-SSMAssociationList -AssociationFilterList $filter1

Saída:

AssociationId : d8617c07-2079-4c18-9847-1655fc2698b0 DocumentVersion : InstanceId : i-0000293ffd8c57862 LastExecutionDate : 2/20/2015 8:31:11 AM Name : AWS-UpdateSSMAgent Overview : Amazon.SimpleSystemsManagement.Model.AssociationOverview ScheduleExpression : Targets : {InstanceIds}
  • Para obter detalhes da API, consulte ListAssociationsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMAssociationVersionList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo recupera todas as versões da associação fornecida.

Get-SSMAssociationVersionList -AssociationId 123a45a0-c678-9012-3456-78901234db5e

Saída:

AssociationId : 123a45a0-c678-9012-3456-78901234db5e AssociationName : AssociationVersion : 2 ComplianceSeverity : CreatedDate : 3/12/2019 9:21:01 AM DocumentVersion : MaxConcurrency : MaxErrors : Name : AWS-GatherSoftwareInventory OutputLocation : Parameters : {} ScheduleExpression : Targets : {InstanceIds} AssociationId : 123a45a0-c678-9012-3456-78901234db5e AssociationName : test-case-1234567890 AssociationVersion : 1 ComplianceSeverity : CreatedDate : 3/2/2019 8:53:29 AM DocumentVersion : MaxConcurrency : MaxErrors : Name : AWS-GatherSoftwareInventory OutputLocation : Parameters : {} ScheduleExpression : rate(30minutes) Targets : {InstanceIds}
  • Para obter detalhes da API, consulte ListAssociationVersionsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMAutomationExecution.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe os detalhes de uma execução do Automation.

Get-SSMAutomationExecution -AutomationExecutionId "4105a4fc-f944-11e6-9d32-8fb2db27a909"

Saída:

AutomationExecutionId : 4105a4fc-f944-11e6-9d32-8fb2db27a909 AutomationExecutionStatus : Failed DocumentName : AWS-UpdateLinuxAmi DocumentVersion : 1 ExecutionEndTime : 2/22/2017 9:17:08 PM ExecutionStartTime : 2/22/2017 9:17:02 PM FailureMessage : Step launchInstance failed maximum allowed times. You are not authorized to perform this operation. Encoded authorization failure message: B_V2QyyN7NhSZQYpmVzpEc4oSnj2GLTNYnXUHsTbqJkNMoDgubmbtthLmZyaiUYekORIrA42-fv1x-04q5Fjff6glh Yb6TI5b0GQeeNrpwNvpDzmO-PSR1swlAbg9fdM9BcNjyrznspUkWpuKu9EC1Ou6v3OXU1KC9nZ7mPlWMFZNkSioQqpwWEvMw-GZktsQzm67qOhUhBNOLWYhbS pkfiqzY-5nw3S0obx30fhd3EJa5O_-GjV_a0nFXQJa70ik40bFOrEh3MtCSbrQT6--DvFy_FQ8TKvkIXadyVskeJI84XOF5WmA60f1pi5GI08i-nRfZS6oDeU gELBjjoFKD8s3L2aI0B6umWVxnQOjqhQRxwJ53b54sZJ2PW3v_mtg9-q0CK0ezS3xfh_y0ilaUGOAZG-xjQFuvU_JZedWpla3xi-MZsmblAifBI (Service: AmazonEC2; Status Code: 403; Error Code: UnauthorizedOperation; Request ID: 6a002f94-ba37-43fd-99e6-39517715fce5) Outputs : {[createImage.ImageId, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]]} Parameters : {[AutomationAssumeRole, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]], [InstanceIamRole, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]], [SourceAmiId, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]]} StepExecutions : {launchInstance, updateOSSoftware, stopInstance, createImage...}

Exemplo 2: esse exemplo lista os detalhes da etapa para o ID de execução do Automation fornecido

Get-SSMAutomationExecution -AutomationExecutionId e1d2bad3-4567-8901-ae23-456c7c8901be | Select-Object -ExpandProperty StepExecutions | Select-Object StepName, Action, StepStatus, ValidNextSteps

Saída:

StepName Action StepStatus ValidNextSteps -------- ------ ---------- -------------- LaunchInstance aws:runInstances Success {OSCompatibilityCheck} OSCompatibilityCheck aws:runCommand Success {RunPreUpdateScript} RunPreUpdateScript aws:runCommand Success {UpdateEC2Config} UpdateEC2Config aws:runCommand Cancelled {} UpdateSSMAgent aws:runCommand Pending {} UpdateAWSPVDriver aws:runCommand Pending {} UpdateAWSEnaNetworkDriver aws:runCommand Pending {} UpdateAWSNVMe aws:runCommand Pending {} InstallWindowsUpdates aws:runCommand Pending {} RunPostUpdateScript aws:runCommand Pending {} RunSysprepGeneralize aws:runCommand Pending {} StopInstance aws:changeInstanceState Pending {} CreateImage aws:createImage Pending {} TerminateInstance aws:changeInstanceState Pending {}
  • Para obter detalhes da API, consulte GetAutomationExecutionem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMAutomationExecutionList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo descreve todas as execuções do Automation ativas e encerradas associadas à sua conta.

Get-SSMAutomationExecutionList

Saída:

AutomationExecutionId : 4105a4fc-f944-11e6-9d32-8fb2db27a909 AutomationExecutionStatus : Failed DocumentName : AWS-UpdateLinuxAmi DocumentVersion : 1 ExecutedBy : admin ExecutionEndTime : 2/22/2017 9:17:08 PM ExecutionStartTime : 2/22/2017 9:17:02 PM LogFile : Outputs : {[createImage.ImageId, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]]}

Exemplo 2: Este exemplo exibe ExecutionID, documento, data e hora de início/término da execução para execuções que não sejam “Sucesso” AutomationExecutionStatus

Get-SSMAutomationExecutionList | Where-Object AutomationExecutionStatus -ne "Success" | Select-Object AutomationExecutionId, DocumentName, AutomationExecutionStatus, ExecutionStartTime, ExecutionEndTime | Format-Table -AutoSize

Saída:

AutomationExecutionId DocumentName AutomationExecutionStatus ExecutionStartTime ExecutionEndTime --------------------- ------------ ------------------------- ------------------ ---------------- e1d2bad3-4567-8901-ae23-456c7c8901be AWS-UpdateWindowsAmi Cancelled 4/16/2019 5:37:04 AM 4/16/2019 5:47:29 AM 61234567-a7f8-90e1-2b34-567b8bf9012c Fixed-UpdateAmi Cancelled 4/16/2019 5:33:04 AM 4/16/2019 5:40:15 AM 91234d56-7e89-0ac1-2aee-34ea5d6a7c89 AWS-UpdateWindowsAmi Failed 4/16/2019 5:22:46 AM 4/16/2019 5:27:29 AM

O código de exemplo a seguir mostra como usar Get-SSMAutomationStepExecution.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe informações sobre todas as execuções de etapas ativas e encerradas em um fluxo de trabalho do Automation.

Get-SSMAutomationStepExecution -AutomationExecutionId e1d2bad3-4567-8901-ae23-456c7c8901be | Select-Object StepName, Action, StepStatus

Saída:

StepName Action StepStatus -------- ------ ---------- LaunchInstance aws:runInstances Success OSCompatibilityCheck aws:runCommand Success RunPreUpdateScript aws:runCommand Success UpdateEC2Config aws:runCommand Cancelled UpdateSSMAgent aws:runCommand Pending UpdateAWSPVDriver aws:runCommand Pending UpdateAWSEnaNetworkDriver aws:runCommand Pending UpdateAWSNVMe aws:runCommand Pending InstallWindowsUpdates aws:runCommand Pending RunPostUpdateScript aws:runCommand Pending RunSysprepGeneralize aws:runCommand Pending StopInstance aws:changeInstanceState Pending CreateImage aws:createImage Pending TerminateInstance aws:changeInstanceState Pending

O código de exemplo a seguir mostra como usar Get-SSMAvailablePatch.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém todos os patches disponíveis para o Windows Server 2012 que apresentam gravidade MSRC crítica A sintaxe usada neste exemplo requer a PowerShell versão 3 ou posterior.

$filter1 = @{Key="PRODUCT";Values=@("WindowsServer2012")} $filter2 = @{Key="MSRC_SEVERITY";Values=@("Critical")} Get-SSMAvailablePatch -Filter $filter1,$filter2

Saída:

Classification : SecurityUpdates ContentUrl : https://support.microsoft.com/en-us/kb/2727528 Description : A security issue has been identified that could allow an unauthenticated remote attacker to compromise your system and gain control over it. You can help protect your system by installing this update from Microsoft. After you install this update, you may have to restart your system. Id : 1eb507be-2040-4eeb-803d-abc55700b715 KbNumber : KB2727528 Language : All MsrcNumber : MS12-072 MsrcSeverity : Critical Product : WindowsServer2012 ProductFamily : Windows ReleaseDate : 11/13/2012 6:00:00 PM Title : Security Update for Windows Server 2012 (KB2727528) Vendor : Microsoft ...

Exemplo 2: Com a PowerShell versão 2, você deve usar New-Object para criar cada filtro.

$filter1 = New-Object Amazon.SimpleSystemsManagement.Model.PatchOrchestratorFilter $filter1.Key = "PRODUCT" $filter1.Values = "WindowsServer2012" $filter2 = New-Object Amazon.SimpleSystemsManagement.Model.PatchOrchestratorFilter $filter2.Key = "MSRC_SEVERITY" $filter2.Values = "Critical" Get-SSMAvailablePatch -Filter $filter1,$filter2

Exemplo 3: Este exemplo busca todas as atualizações lançadas nos últimos 20 dias e aplicáveis aos produtos correspondentes WindowsServer a 2019

Get-SSMAvailablePatch | Where-Object ReleaseDate -ge (Get-Date).AddDays(-20) | Where-Object Product -eq "WindowsServer2019" | Select-Object ReleaseDate, Product, Title

Saída:

ReleaseDate Product Title ----------- ------- ----- 4/9/2019 5:00:12 PM WindowsServer2019 2019-04 Security Update for Adobe Flash Player for Windows Server 2019 for x64-based Systems (KB4493478) 4/9/2019 5:00:06 PM WindowsServer2019 2019-04 Cumulative Update for Windows Server 2019 for x64-based Systems (KB4493509) 4/2/2019 5:00:06 PM WindowsServer2019 2019-03 Servicing Stack Update for Windows Server 2019 for x64-based Systems (KB4493510)
  • Para obter detalhes da API, consulte DescribeAvailablePatchesem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMCommand.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todos os comandos solicitados.

Get-SSMCommand

Saída:

CommandId : 4b75a163-d39a-4d97-87c9-98ae52c6be35 Comment : Apply association with id at update time: 4cc73e42-d5ae-4879-84f8-57e09c0efcd0 CompletedCount : 1 DocumentName : AWS-RefreshAssociation ErrorCount : 0 ExpiresAfter : 2/24/2017 3:19:08 AM InstanceIds : {i-0cb2b964d3e14fd9f} MaxConcurrency : 50 MaxErrors : 0 NotificationConfig : Amazon.SimpleSystemsManagement.Model.NotificationConfig OutputS3BucketName : OutputS3KeyPrefix : OutputS3Region : Parameters : {[associationIds, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]]} RequestedDateTime : 2/24/2017 3:18:08 AM ServiceRole : Status : Success StatusDetails : Success TargetCount : 1 Targets : {}

Exemplo 2: esse exemplo obtém o status de um comando específico

Get-SSMCommand -CommandId "4b75a163-d39a-4d97-87c9-98ae52c6be35"

Exemplo 3: esse exemplo recupera todos os comandos SSM invocados após 2019-04-01T00:00:00Z

Get-SSMCommand -Filter @{Key="InvokedAfter";Value="2019-04-01T00:00:00Z"} | Select-Object CommandId, DocumentName, Status, RequestedDateTime | Sort-Object -Property RequestedDateTime -Descending

Saída:

CommandId DocumentName Status RequestedDateTime --------- ------------ ------ ----------------- edb1b23e-456a-7adb-aef8-90e-012ac34f AWS-RunPowerShellScript Cancelled 4/16/2019 5:45:23 AM 1a2dc3fb-4567-890d-a1ad-234b5d6bc7d9 AWS-ConfigureAWSPackage Success 4/6/2019 9:19:42 AM 12c3456c-7e90-4f12-1232-1234f5b67893 KT-Retrieve-Cloud-Type-Win Failed 4/2/2019 4:13:07 AM fe123b45-240c-4123-a2b3-234bdd567ecf AWS-RunInspecChecks Failed 4/1/2019 2:27:31 PM 1eb23aa4-567d-4123-12a3-4c1c2ab34561 AWS-RunPowerShellScript Success 4/1/2019 1:05:55 PM 1c2f3bb4-ee12-4bc1-1a23-12345eea123e AWS-RunInspecChecks Failed 4/1/2019 11:13:09 AM
  • Para obter detalhes da API, consulte ListCommandsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMCommandInvocation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as invocações de um comando.

Get-SSMCommandInvocation -CommandId "b8eac879-0541-439d-94ec-47a80d554f44" -Detail $true

Saída:

CommandId : b8eac879-0541-439d-94ec-47a80d554f44 CommandPlugins : {aws:runShellScript} Comment : IP config DocumentName : AWS-RunShellScript InstanceId : i-0cb2b964d3e14fd9f InstanceName : NotificationConfig : Amazon.SimpleSystemsManagement.Model.NotificationConfig RequestedDateTime : 2/22/2017 8:13:16 PM ServiceRole : StandardErrorUrl : StandardOutputUrl : Status : Success StatusDetails : Success TraceOutput :

Exemplo 2: Este exemplo lista a invocação do ID de comando CommandPlugins e1eb2e3c-ed4c-5123-45c1-234f5612345f

Get-SSMCommandInvocation -CommandId e1eb2e3c-ed4c-5123-45c1-234f5612345f -Detail:$true | Select-Object -ExpandProperty CommandPlugins

Saída:

Name : aws:runPowerShellScript Output : Completed 17.7 KiB/17.7 KiB (40.1 KiB/s) with 1 file(s) remainingdownload: s3://dd-aess-r-ctmer/KUMO.png to ..\..\programdata\KUMO.png kumo available OutputS3BucketName : OutputS3KeyPrefix : OutputS3Region : eu-west-1 ResponseCode : 0 ResponseFinishDateTime : 4/3/2019 11:53:23 AM ResponseStartDateTime : 4/3/2019 11:53:21 AM StandardErrorUrl : StandardOutputUrl : Status : Success StatusDetails : Success
  • Para obter detalhes da API, consulte ListCommandInvocationsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMCommandInvocationDetail.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe os detalhes de um comando executado em uma instância.

Get-SSMCommandInvocationDetail -InstanceId "i-0cb2b964d3e14fd9f" -CommandId "b8eac879-0541-439d-94ec-47a80d554f44"

Saída:

CommandId : b8eac879-0541-439d-94ec-47a80d554f44 Comment : IP config DocumentName : AWS-RunShellScript ExecutionElapsedTime : PT0.004S ExecutionEndDateTime : 2017-02-22T20:13:16.651Z ExecutionStartDateTime : 2017-02-22T20:13:16.651Z InstanceId : i-0cb2b964d3e14fd9f PluginName : aws:runShellScript ResponseCode : 0 StandardErrorContent : StandardErrorUrl : StandardOutputContent : StandardOutputUrl : Status : Success StatusDetails : Success
  • Para obter detalhes da API, consulte GetCommandInvocationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMComplianceItemList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo mostra a lista de itens de conformidade para o ID e tipo de recurso fornecidos, filtrados pelo tipo de conformidade "Associação"

Get-SSMComplianceItemList -ResourceId i-1a2caf345f67d0dc2 -ResourceType ManagedInstance -Filter @{Key="ComplianceType";Values="Association"}

Saída:

ComplianceType : Association Details : {[DocumentName, AWS-GatherSoftwareInventory], [DocumentVersion, 1]} ExecutionSummary : Amazon.SimpleSystemsManagement.Model.ComplianceExecutionSummary Id : 123a45a1-c234-1234-1245-67891236db4e ResourceId : i-1a2caf345f67d0dc2 ResourceType : ManagedInstance Severity : UNSPECIFIED Status : COMPLIANT Title :
  • Para obter detalhes da API, consulte ListComplianceItemsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMComplianceSummaryList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo devolve uma contagem resumida de recursos em ou fora de conformidade para todos os tipos de conformidade.

Get-SSMComplianceSummaryList

Saída:

ComplianceType CompliantSummary NonCompliantSummary -------------- ---------------- ------------------- FleetTotal Amazon.SimpleSystemsManagement.Model.CompliantSummary Amazon.SimpleSystemsManagement.Model.NonCompliantSummary Association Amazon.SimpleSystemsManagement.Model.CompliantSummary Amazon.SimpleSystemsManagement.Model.NonCompliantSummary Custom:InSpec Amazon.SimpleSystemsManagement.Model.CompliantSummary Amazon.SimpleSystemsManagement.Model.NonCompliantSummary Patch Amazon.SimpleSystemsManagement.Model.CompliantSummary Amazon.SimpleSystemsManagement.Model.NonCompliantSummary
  • Para obter detalhes da API, consulte ListComplianceSummariesem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMConnectionStatus.

Ferramentas para PowerShell

Exemplo 1: esse exemplo recupera o status de conexão do Gerenciador de Sessões de uma instância para determinar se ela está conectada e pronta para receber conexões do Gerenciador de Sessões.

Get-SSMConnectionStatus -Target i-0a1caf234f12d3dc4

Saída:

Status Target ------ ------ Connected i-0a1caf234f12d3dc4
  • Para obter detalhes da API, consulte GetConnectionStatusem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMDefaultPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe a lista de referência de patches padrão.

Get-SSMDefaultPatchBaseline

Saída:

arn:aws:ssm:us-west-2:123456789012:patchbaseline/pb-04fb4ae6142167966
  • Para obter detalhes da API, consulte GetDefaultPatchBaselineem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMDeployablePatchSnapshotForInstance.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe o instantâneo atual da lista de referência de patches usada por uma instância. Esse comando deve ser executado da instância usando as credenciais da instância. Para garantir que use as credenciais da instância, o exemplo passa um objeto Amazon.Runtime.InstanceProfileAWSCredentials para o parâmetro Credentials.

$credentials = [Amazon.Runtime.InstanceProfileAWSCredentials]::new() Get-SSMDeployablePatchSnapshotForInstance -SnapshotId "4681775b-098f-4435-a956-0ef33373ac11" -InstanceId "i-0cb2b964d3e14fd9f" -Credentials $credentials

Saída:

InstanceId SnapshotDownloadUrl ---------- ------------------- i-0cb2b964d3e14fd9f https://patch-baseline-snapshot-us-west-2.s3-us-west-2.amazonaws.com/853d0d3db0f0cafe...1692/4681775b-098f-4435...

Exemplo 2: Este exemplo mostra como obter o completo SnapshotDownloadUrl. Esse comando deve ser executado da instância usando as credenciais da instância. Para garantir que ele use as credenciais da instância, o exemplo configura a PowerShell sessão para usar um Amazon.Runtime.InstanceProfileAWSCredentials objeto.

Set-AWSCredential -Credential ([Amazon.Runtime.InstanceProfileAWSCredentials]::new()) (Get-SSMDeployablePatchSnapshotForInstance -SnapshotId "4681775b-098f-4435-a956-0ef33373ac11" -InstanceId "i-0cb2b964d3e14fd9f").SnapshotDownloadUrl

Saída:

https://patch-baseline-snapshot-us-west-2.s3-us-west-2.amazonaws.com/853d0d3db0f0cafe...

O código de exemplo a seguir mostra como usar Get-SSMDocument.

Ferramentas para PowerShell

Exemplo 1: esse exemplo retorna o conteúdo de um documento.

Get-SSMDocument -Name "RunShellScript"

Saída:

Content ------- {...

Exemplo 2: esse exemplo exibe o conteúdo completo de um documento.

(Get-SSMDocument -Name "RunShellScript").Content { "schemaVersion":"2.0", "description":"Run an updated script", "parameters":{ "commands":{ "type":"StringList", "description":"(Required) Specify a shell script or a command to run.", "minItems":1, "displayType":"textarea" } }, "mainSteps":[ { "action":"aws:runShellScript", "name":"runShellScript", "inputs":{ "commands":"{{ commands }}" } }, { "action":"aws:runPowerShellScript", "name":"runPowerShellScript", "inputs":{ "commands":"{{ commands }}" } } ] }
  • Para obter detalhes da API, consulte GetDocumentem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMDocumentDescription.

Ferramentas para PowerShell

Exemplo 1: esse exemplo retorna informações sobre um documento.

Get-SSMDocumentDescription -Name "RunShellScript"

Saída:

CreatedDate : 2/24/2017 5:25:13 AM DefaultVersion : 1 Description : Run an updated script DocumentType : Command DocumentVersion : 1 Hash : f775e5df4904c6fa46686c4722fae9de1950dace25cd9608ff8d622046b68d9b HashType : Sha256 LatestVersion : 1 Name : RunShellScript Owner : 123456789012 Parameters : {commands} PlatformTypes : {Linux} SchemaVersion : 2.0 Sha1 : Status : Active
  • Para obter detalhes da API, consulte DescribeDocumentem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMDocumentList.

Ferramentas para PowerShell

Exemplo 1: lista todos os documentos de configuração em sua conta.

Get-SSMDocumentList

Saída:

DocumentType : Command DocumentVersion : 1 Name : AWS-ApplyPatchBaseline Owner : Amazon PlatformTypes : {Windows} SchemaVersion : 1.2 DocumentType : Command DocumentVersion : 1 Name : AWS-ConfigureAWSPackage Owner : Amazon PlatformTypes : {Windows, Linux} SchemaVersion : 2.0 DocumentType : Command DocumentVersion : 1 Name : AWS-ConfigureCloudWatch Owner : Amazon PlatformTypes : {Windows} SchemaVersion : 1.2 ...

Exemplo 2: esse exemplo recupera todos os documentos de automação com o nome correspondente a "Plataform"

Get-SSMDocumentList -DocumentFilterList @{Key="DocumentType";Value="Automation"} | Where-Object Name -Match "Platform"

Saída:

DocumentFormat : JSON DocumentType : Automation DocumentVersion : 7 Name : KT-Get-Platform Owner : 987654123456 PlatformTypes : {Windows, Linux} SchemaVersion : 0.3 Tags : {} TargetType : VersionName :
  • Para obter detalhes da API, consulte ListDocumentsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMDocumentPermission.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as versões de um documento.

Get-SSMDocumentVersionList -Name "RunShellScript"

Saída:

CreatedDate DocumentVersion IsDefaultVersion Name ----------- --------------- ---------------- ---- 2/24/2017 5:25:13 AM 1 True RunShellScript

O código de exemplo a seguir mostra como usar Get-SSMDocumentVersionList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as versões de um documento.

Get-SSMDocumentVersionList -Name "AWS-UpdateSSMAgent"

Saída:

CreatedDate : 6/1/2021 5:19:10 PM DocumentFormat : JSON DocumentVersion : 1 IsDefaultVersion : True Name : AWS-UpdateSSMAgent Status : Active
  • Para obter detalhes da API, consulte ListDocumentVersionsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMEffectiveInstanceAssociationList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo descreve as associações efetivas de uma instância.

Get-SSMEffectiveInstanceAssociationList -InstanceId "i-0000293ffd8c57862" -MaxResult 5

Saída:

AssociationId Content ------------- ------- d8617c07-2079-4c18-9847-1655fc2698b0 {...

Exemplo 2: esse exemplo exibe o conteúdo das associações efetivas de uma instância.

(Get-SSMEffectiveInstanceAssociationList -InstanceId "i-0000293ffd8c57862" -MaxResult 5).Content

Saída:

{ "schemaVersion": "1.2", "description": "Update the Amazon SSM Agent to the latest version or specified version.", "parameters": { "version": { "default": "", "description": "(Optional) A specific version of the Amazon SSM Agent to install. If not specified, the agen t will be updated to the latest version.", "type": "String" }, "allowDowngrade": { "default": "false", "description": "(Optional) Allow the Amazon SSM Agent service to be downgraded to an earlier version. If set to false, the service can be upgraded to newer versions only (default). If set to true, specify the earlier version.", "type": "String", "allowedValues": [ "true", "false" ] } }, "runtimeConfig": { "aws:updateSsmAgent": { "properties": [ { "agentName": "amazon-ssm-agent", "source": "https://s3.{Region}.amazonaws.com/amazon-ssm-{Region}/ssm-agent-manifest.json", "allowDowngrade": "{{ allowDowngrade }}", "targetVersion": "{{ version }}" } ] } } }

O código de exemplo a seguir mostra como usar Get-SSMEffectivePatchesForPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: esse exemplo mostra todas as listas de referência de patches, com uma lista de resultados máxima de 1.

Get-SSMEffectivePatchesForPatchBaseline -BaselineId "pb-0a2f1059b670ebd31" -MaxResult 1

Saída:

Patch PatchStatus ----- ----------- Amazon.SimpleSystemsManagement.Model.Patch Amazon.SimpleSystemsManagement.Model.PatchStatus

Exemplo 2: esse exemplo mostra o status do patch para todas as listas de referência de patches, com uma lista de resultados máxima de 1.

(Get-SSMEffectivePatchesForPatchBaseline -BaselineId "pb-0a2f1059b670ebd31" -MaxResult 1).PatchStatus

Saída:

ApprovalDate DeploymentStatus ------------ ---------------- 12/21/2010 6:00:00 PM APPROVED

O código de exemplo a seguir mostra como usar Get-SSMInstanceAssociationsStatus.

Ferramentas para PowerShell

Exemplo 1: esse exemplo mostra detalhes das associações de uma instância.

Get-SSMInstanceAssociationsStatus -InstanceId "i-0000293ffd8c57862"

Saída:

AssociationId : d8617c07-2079-4c18-9847-1655fc2698b0 DetailedStatus : Pending DocumentVersion : 1 ErrorCode : ExecutionDate : 2/20/2015 8:31:11 AM ExecutionSummary : temp_status_change InstanceId : i-0000293ffd8c57862 Name : AWS-UpdateSSMAgent OutputUrl : Status : Pending

Exemplo 2: esse exemplo verifica o status da associação da instância para o ID da instância fornecido e exibe o status de execução dessas associações

Get-SSMInstanceAssociationsStatus -InstanceId i-012e3cb4df567e8aa | ForEach-Object {Get-SSMAssociationExecution -AssociationId .AssociationId}

Saída:

AssociationId : 512a34a5-c678-1234-1234-12345678db9e AssociationVersion : 2 CreatedTime : 3/2/2019 8:53:29 AM DetailedStatus : ExecutionId : 512a34a5-c678-1234-1234-12345678db9e LastExecutionDate : 1/1/0001 12:00:00 AM ResourceCountByStatus : {Success=9} Status : Success

O código de exemplo a seguir mostra como usar Get-SSMInstanceInformation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo mostra detalhes de cada uma de suas instâncias.

Get-SSMInstanceInformation

Saída:

ActivationId : AgentVersion : 2.0.672.0 AssociationOverview : Amazon.SimpleSystemsManagement.Model.InstanceAggregatedAssociationOverview AssociationStatus : Success ComputerName : ip-172-31-44-222.us-west-2.compute.internal IamRole : InstanceId : i-0cb2b964d3e14fd9f IPAddress : 172.31.44.222 IsLatestVersion : True LastAssociationExecutionDate : 2/24/2017 3:18:09 AM LastPingDateTime : 2/24/2017 3:35:03 AM LastSuccessfulAssociationExecutionDate : 2/24/2017 3:18:09 AM Name : PingStatus : ConnectionLost PlatformName : Amazon Linux AMI PlatformType : Linux PlatformVersion : 2016.09 RegistrationDate : 1/1/0001 12:00:00 AM ResourceType : EC2Instance

Exemplo 2: Este exemplo mostra como usar o parâmetro -Filter para filtrar os resultados somente para as instâncias do AWS Systems Manager na região us-east-1 com um AgentVersion de2.2.800.0. Você pode encontrar uma lista de valores-chave válidos de -Filter no tópico de referência da InstanceInformation API (https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_ InstanceInformation .html #systemsmanager -Type- -InstanceInformation). ActivationId

$Filters = @{ Key="AgentVersion" Values="2.2.800.0" } Get-SSMInstanceInformation -Region us-east-1 -Filter $Filters

Saída:

ActivationId : AgentVersion : 2.2.800.0 AssociationOverview : Amazon.SimpleSystemsManagement.Model.InstanceAggregatedAssociationOverview AssociationStatus : Success ComputerName : EXAMPLE-EXAMPLE.WORKGROUP IamRole : InstanceId : i-EXAMPLEb0792d98ce IPAddress : 10.0.0.01 IsLatestVersion : False LastAssociationExecutionDate : 8/16/2018 12:02:50 AM LastPingDateTime : 8/16/2018 7:40:27 PM LastSuccessfulAssociationExecutionDate : 8/16/2018 12:02:50 AM Name : PingStatus : Online PlatformName : Microsoft Windows Server 2016 Datacenter PlatformType : Windows PlatformVersion : 10.0.14393 RegistrationDate : 1/1/0001 12:00:00 AM ResourceType : EC2Instance ActivationId : AgentVersion : 2.2.800.0 AssociationOverview : Amazon.SimpleSystemsManagement.Model.InstanceAggregatedAssociationOverview AssociationStatus : Success ComputerName : EXAMPLE-EXAMPLE.WORKGROUP IamRole : InstanceId : i-EXAMPLEac7501d023 IPAddress : 10.0.0.02 IsLatestVersion : False LastAssociationExecutionDate : 8/16/2018 12:00:20 AM LastPingDateTime : 8/16/2018 7:40:35 PM LastSuccessfulAssociationExecutionDate : 8/16/2018 12:00:20 AM Name : PingStatus : Online PlatformName : Microsoft Windows Server 2016 Datacenter PlatformType : Windows PlatformVersion : 10.0.14393 RegistrationDate : 1/1/0001 12:00:00 AM ResourceType : EC2Instance

Exemplo 3: Este exemplo mostra como usar o InstanceInformationFilterList parâmetro - para filtrar os resultados somente para as instâncias do AWS Systems Manager na região us-east-1 com PlatformTypes Windows ouLinux. Você pode encontrar uma lista de InstanceInformationFilterList valores-chave válidos no tópico de referência da InstanceInformationFilter API (https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_ InstanceInformationFilter .html).

$Filters = @{ Key="PlatformTypes" ValueSet=("Windows","Linux") } Get-SSMInstanceInformation -Region us-east-1 -InstanceInformationFilterList $Filters

Saída:

ActivationId : AgentVersion : 2.2.800.0 AssociationOverview : Amazon.SimpleSystemsManagement.Model.InstanceAggregatedAssociationOverview AssociationStatus : Success ComputerName : EXAMPLE-EXAMPLE.WORKGROUP IamRole : InstanceId : i-EXAMPLEb0792d98ce IPAddress : 10.0.0.27 IsLatestVersion : False LastAssociationExecutionDate : 8/16/2018 12:02:50 AM LastPingDateTime : 8/16/2018 7:40:27 PM LastSuccessfulAssociationExecutionDate : 8/16/2018 12:02:50 AM Name : PingStatus : Online PlatformName : Ubuntu Server 18.04 LTS PlatformType : Linux PlatformVersion : 18.04 RegistrationDate : 1/1/0001 12:00:00 AM ResourceType : EC2Instance ActivationId : AgentVersion : 2.2.800.0 AssociationOverview : Amazon.SimpleSystemsManagement.Model.InstanceAggregatedAssociationOverview AssociationStatus : Success ComputerName : EXAMPLE-EXAMPLE.WORKGROUP IamRole : InstanceId : i-EXAMPLEac7501d023 IPAddress : 10.0.0.100 IsLatestVersion : False LastAssociationExecutionDate : 8/16/2018 12:00:20 AM LastPingDateTime : 8/16/2018 7:40:35 PM LastSuccessfulAssociationExecutionDate : 8/16/2018 12:00:20 AM Name : PingStatus : Online PlatformName : Microsoft Windows Server 2016 Datacenter PlatformType : Windows PlatformVersion : 10.0.14393 RegistrationDate : 1/1/0001 12:00:00 AM ResourceType : EC2Instance

Exemplo 4: Este exemplo lista as instâncias e exportações InstanceId gerenciadas por ssm LastPingDateTime e PlatformName em um arquivo csv. PingStatus

Get-SSMInstanceInformation | Select-Object InstanceId, PingStatus, LastPingDateTime, PlatformName | Export-Csv Instance-details.csv -NoTypeInformation

O código de exemplo a seguir mostra como usar Get-SSMInstancePatch.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém os detalhes de conformidade do patch para uma instância.

Get-SSMInstancePatch -InstanceId "i-08ee91c0b17045407"
  • Para obter detalhes da API, consulte DescribeInstancePatchesem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMInstancePatchState.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém os estados resumidos de patches para uma instância.

Get-SSMInstancePatchState -InstanceId "i-08ee91c0b17045407"

Exemplo 2: esse exemplo obtém os estados resumidos de patches para duas instâncias.

Get-SSMInstancePatchState -InstanceId "i-08ee91c0b17045407","i-09a618aec652973a9"

O código de exemplo a seguir mostra como usar Get-SSMInstancePatchStatesForPatchGroup.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém os estados de resumo de patches por instância de um grupo de patches.

Get-SSMInstancePatchStatesForPatchGroup -PatchGroup "Production"

O código de exemplo a seguir mostra como usar Get-SSMInventory.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém os metadados personalizados do seu inventário.

Get-SSMInventory

Saída:

Data Id ---- -- {[AWS:InstanceInformation, Amazon.SimpleSystemsManagement.Model.InventoryResultItem]} i-0cb2b964d3e14fd9f
  • Para obter detalhes da API, consulte GetInventoryem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMInventoryEntriesList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as entradas de inventário personalizadas para uma instância.

Get-SSMInventoryEntriesList -InstanceId "i-0cb2b964d3e14fd9f" -TypeName "Custom:RackInfo"

Saída:

CaptureTime : 2016-08-22T10:01:01Z Entries : {Amazon.Runtime.Internal.Util.AlwaysSendDictionary`2[System.String,System.String]} InstanceId : i-0cb2b964d3e14fd9f NextToken : SchemaVersion : 1.0 TypeName : Custom:RackInfo

Exemplo 2: esse exemplo lista os detalhes.

(Get-SSMInventoryEntriesList -InstanceId "i-0cb2b964d3e14fd9f" -TypeName "Custom:RackInfo").Entries

Saída:

Key Value --- ----- RackLocation Bay B/Row C/Rack D/Shelf E
  • Para obter detalhes da API, consulte ListInventoryEntriesem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMInventoryEntryList.

Ferramentas para PowerShell

Exemplo 1: Esse exemplo recupera entradas AWS:Network de inventário de tipo para a instância.

Get-SSMInventoryEntryList -InstanceId mi-088dcb0ecea37b076 -TypeName AWS:Network | Select-Object -ExpandProperty Entries

Saída:

Key Value --- ----- DHCPServer 172.31.11.2 DNSServer 172.31.0.1 Gateway 172.31.11.2 IPV4 172.31.11.222 IPV6 fe12::3456:7da8:901a:12a3 MacAddress 1A:23:4E:5B:FB:67 Name Amazon Elastic Network Adapter SubnetMask 255.255.240.0

O código de exemplo a seguir mostra como usar Get-SSMInventorySchema.

Ferramentas para PowerShell

Exemplo 1: esse exemplo retorna uma lista de nomes de tipos de inventário para a conta.

Get-SSMInventorySchema
  • Para obter detalhes da API, consulte GetInventorySchemaem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMLatestEC2Image.

Ferramentas para PowerShell

Exemplo 1: Este exemplo lista todas as versões mais recentes do Windows AMIs.

PS Get-SSMLatestEC2Image -Path ami-windows-latest

Saída:

Name Value ---- ----- Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Express ami-0e5ddd288daff4fab Windows_Server-2012-R2_RTM-Chinese_Simplified-64Bit-Base ami-0c5ea64e6bec1cb50 Windows_Server-2012-R2_RTM-Chinese_Traditional-64Bit-Base ami-09775eff0bf8c113d Windows_Server-2012-R2_RTM-Dutch-64Bit-Base ami-025064b67e28cf5df ...

Exemplo 2: Este exemplo recupera o ID da AMI de uma imagem específica do Amazon Linux para a região us-west-2.

PS Get-SSMLatestEC2Image -Path ami-amazon-linux-latest -ImageName amzn-ami-hvm-x86_64-ebs -Region us-west-2

Saída:

ami-09b92cd132204c704

Exemplo 3: Este exemplo lista todas as últimas janelas que AMIs correspondem à expressão curinga especificada.

Get-SSMLatestEC2Image -Path ami-windows-latest -ImageName *Windows*2019*English*

Saída:

Name Value ---- ----- Windows_Server-2019-English-Full-SQL_2017_Web ami-085e9d27da5b73a42 Windows_Server-2019-English-STIG-Core ami-0bfd85c29148c7f80 Windows_Server-2019-English-Full-SQL_2019_Web ami-02099560d7fb11f20 Windows_Server-2019-English-Full-SQL_2016_SP2_Standard ami-0d7ae2d81c07bd598 ...

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém detalhes sobre uma janela de manutenção.

Get-SSMMaintenanceWindow -WindowId "mw-03eb9db42890fb82d"

Saída:

AllowUnassociatedTargets : False CreatedDate : 2/20/2017 6:14:05 PM Cutoff : 1 Duration : 2 Enabled : True ModifiedDate : 2/20/2017 6:14:05 PM Name : TestMaintWin Schedule : cron(0 */30 * * * ? *) WindowId : mw-03eb9db42890fb82d
  • Para obter detalhes da API, consulte GetMaintenanceWindowem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowExecution.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista informações sobre uma tarefa que foi executada como parte da execução de uma janela de manutenção.

Get-SSMMaintenanceWindowExecution -WindowExecutionId "518d5565-5969-4cca-8f0e-da3b2a638355"

Saída:

EndTime : 2/21/2017 4:00:35 PM StartTime : 2/21/2017 4:00:34 PM Status : FAILED StatusDetails : One or more tasks in the orchestration failed. TaskIds : {ac0c6ae1-daa3-4a89-832e-d384503b6586} WindowExecutionId : 518d5565-5969-4cca-8f0e-da3b2a638355

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowExecutionList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as execuções para uma janela de manutenção.

Get-SSMMaintenanceWindowExecutionList -WindowId "mw-03eb9db42890fb82d"

Saída:

EndTime : 2/20/2017 6:30:17 PM StartTime : 2/20/2017 6:30:16 PM Status : FAILED StatusDetails : One or more tasks in the orchestration failed. WindowExecutionId : 6f3215cf-4101-4fa0-9b7b-9523269599c7 WindowId : mw-03eb9db42890fb82d

Exemplo 2: esse exemplo lista todas as execuções para uma janela de manutenção antes de uma data especificada.

$option1 = @{Key="ExecutedBefore";Values=@("2016-11-04T05:00:00Z")} Get-SSMMaintenanceWindowExecutionList -WindowId "mw-03eb9db42890fb82d" -Filter $option1

Exemplo 3: esse exemplo lista todas as execuções para uma janela de manutenção após uma data especificada.

$option1 = @{Key="ExecutedAfter";Values=@("2016-11-04T05:00:00Z")} Get-SSMMaintenanceWindowExecutionList -WindowId "mw-03eb9db42890fb82d" -Filter $option1

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowExecutionTask.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista informações sobre uma tarefa que fazia parte da execução de uma janela de manutenção.

Get-SSMMaintenanceWindowExecutionTask -TaskId "ac0c6ae1-daa3-4a89-832e-d384503b6586" -WindowExecutionId "518d5565-5969-4cca-8f0e-da3b2a638355"

Saída:

EndTime : 2/21/2017 4:00:35 PM MaxConcurrency : 1 MaxErrors : 1 Priority : 10 ServiceRole : arn:aws:iam::123456789012:role/MaintenanceWindowsRole StartTime : 2/21/2017 4:00:34 PM Status : FAILED StatusDetails : The maximum error count was exceeded. TaskArn : AWS-RunShellScript TaskExecutionId : ac0c6ae1-daa3-4a89-832e-d384503b6586 TaskParameters : {Amazon.Runtime.Internal.Util.AlwaysSendDictionary`2[System.String,Amazon.SimpleSystemsManagement.Model.MaintenanceWindowTaskPara meterValueExpression]} Type : RUN_COMMAND WindowExecutionId : 518d5565-5969-4cca-8f0e-da3b2a638355

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowExecutionTaskInvocationList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista as invocações de uma tarefa executada como parte da execução de uma janela de manutenção.

Get-SSMMaintenanceWindowExecutionTaskInvocationList -TaskId "ac0c6ae1-daa3-4a89-832e-d384503b6586" -WindowExecutionId "518d5565-5969-4cca-8f0e-da3b2a638355"

Saída:

EndTime : 2/21/2017 4:00:34 PM ExecutionId : InvocationId : e274b6e1-fe56-4e32-bd2a-8073c6381d8b OwnerInformation : Parameters : {"documentName":"AWS-RunShellScript","instanceIds":["i-0000293ffd8c57862"],"parameters":{"commands":["df"]},"maxConcurrency":"1", "maxErrors":"1"} StartTime : 2/21/2017 4:00:34 PM Status : FAILED StatusDetails : The instance IDs list contains an invalid entry. TaskExecutionId : ac0c6ae1-daa3-4a89-832e-d384503b6586 WindowExecutionId : 518d5565-5969-4cca-8f0e-da3b2a638355 WindowTargetId :

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowExecutionTaskList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as tarefas associadas à execução de uma janela de manutenção.

Get-SSMMaintenanceWindowExecutionTaskList -WindowExecutionId "518d5565-5969-4cca-8f0e-da3b2a638355"

Saída:

EndTime : 2/21/2017 4:00:35 PM StartTime : 2/21/2017 4:00:34 PM Status : SUCCESS TaskArn : AWS-RunShellScript TaskExecutionId : ac0c6ae1-daa3-4a89-832e-d384503b6586 TaskType : RUN_COMMAND WindowExecutionId : 518d5565-5969-4cca-8f0e-da3b2a638355

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as janelas de manutenção em sua conta.

Get-SSMMaintenanceWindowList

Saída:

Cutoff : 1 Duration : 4 Enabled : True Name : My-First-Maintenance-Window WindowId : mw-06d59c1a07c022145

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowTarget.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todos os destinos para uma janela de manutenção.

Get-SSMMaintenanceWindowTarget -WindowId "mw-06cf17cbefcb4bf4f"

Saída:

OwnerInformation : Single instance ResourceType : INSTANCE Targets : {InstanceIds} WindowId : mw-06cf17cbefcb4bf4f WindowTargetId : 350d44e6-28cc-44e2-951f-4b2c985838f6 OwnerInformation : Two instances in a list ResourceType : INSTANCE Targets : {InstanceIds} WindowId : mw-06cf17cbefcb4bf4f WindowTargetId : e078a987-2866-47be-bedd-d9cf49177d3a

O código de exemplo a seguir mostra como usar Get-SSMMaintenanceWindowTaskList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todas as tarefas para uma janela de manutenção.

Get-SSMMaintenanceWindowTaskList -WindowId "mw-06cf17cbefcb4bf4f"

Saída:

LoggingInfo : MaxConcurrency : 1 MaxErrors : 1 Priority : 10 ServiceRoleArn : arn:aws:iam::123456789012:role/MaintenanceWindowsRole Targets : {InstanceIds} TaskArn : AWS-RunShellScript TaskParameters : {[commands, Amazon.SimpleSystemsManagement.Model.MaintenanceWindowTaskParameterValueExpression]} Type : RUN_COMMAND WindowId : mw-06cf17cbefcb4bf4f WindowTaskId : a23e338d-ff30-4398-8aa3-09cd052ebf17

O código de exemplo a seguir mostra como usar Get-SSMParameterHistory.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista o histórico de valores de um parâmetro.

Get-SSMParameterHistory -Name "Welcome"

Saída:

Description : KeyId : LastModifiedDate : 3/3/2017 6:55:25 PM LastModifiedUser : arn:aws:iam::123456789012:user/admin Name : Welcome Type : String Value : helloWorld
  • Para obter detalhes da API, consulte GetParameterHistoryem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMParameterList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista todos os parâmetros.

Get-SSMParameterList

Saída:

Description : KeyId : LastModifiedDate : 3/3/2017 6:58:23 PM LastModifiedUser : arn:aws:iam::123456789012:user/admin Name : Welcome Type : String
  • Para obter detalhes da API, consulte DescribeParametersem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMParameterValue.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista os valores de um parâmetro.

Get-SSMParameterValue -Name "Welcome"

Saída:

InvalidParameters Parameters ----------------- ---------- {} {Welcome}

Exemplo 2: esse exemplo retorna os detalhes do valor.

(Get-SSMParameterValue -Name "Welcome").Parameters

Saída:

Name Type Value ---- ---- ----- Welcome String Good day, Sunshine!
  • Para obter detalhes da API, consulte GetParametersem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: esse exemplo mostra todas as listas de referência de patches.

Get-SSMPatchBaseline

Saída:

BaselineDescription BaselineId BaselineName ------------------- ---------- ------------ Default Patch Baseline Provided by AWS. arn:aws:ssm:us-west-2:123456789012:patchbaseline/pb-04fb4ae6142167966 AWS-DefaultP... Baseline containing all updates approved for production systems pb-045f10b4f382baeda Production-B... Baseline containing all updates approved for production systems pb-0a2f1059b670ebd31 Production-B...

Exemplo 2: Este exemplo lista todas as linhas de base de patch fornecidas pelo. AWS A sintaxe usada neste exemplo requer a PowerShell versão 3 ou posterior.

$filter1 = @{Key="OWNER";Values=@("AWS")}

Saída:

Get-SSMPatchBaseline -Filter $filter1

Exemplo 3: esse exemplo mostra todas as listas de referência de patches pertencentes a você. A sintaxe usada neste exemplo requer a PowerShell versão 3 ou posterior.

$filter1 = @{Key="OWNER";Values=@("Self")}

Saída:

Get-SSMPatchBaseline -Filter $filter1

Exemplo 4: Com a PowerShell versão 2, você deve usar New-Object para criar cada tag.

$filter1 = New-Object Amazon.SimpleSystemsManagement.Model.PatchOrchestratorFilter $filter1.Key = "OWNER" $filter1.Values = "AWS" Get-SSMPatchBaseline -Filter $filter1

Saída:

BaselineDescription BaselineId BaselineName DefaultBaselin e ------------------- ---------- ------------ -------------- Default Patch Baseline Provided by AWS. arn:aws:ssm:us-west-2:123456789012:patchbaseline/pb-04fb4ae6142167966 AWS-DefaultPatchBaseline True
  • Para obter detalhes da API, consulte DescribePatchBaselinesem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMPatchBaselineDetail.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe os detalhes de uma lista de referência de patches.

Get-SSMPatchBaselineDetail -BaselineId "pb-03da896ca3b68b639"

Saída:

ApprovalRules : Amazon.SimpleSystemsManagement.Model.PatchRuleGroup ApprovedPatches : {} BaselineId : pb-03da896ca3b68b639 CreatedDate : 3/3/2017 5:02:19 PM Description : Baseline containing all updates approved for production systems GlobalFilters : Amazon.SimpleSystemsManagement.Model.PatchFilterGroup ModifiedDate : 3/3/2017 5:02:19 PM Name : Production-Baseline PatchGroups : {} RejectedPatches : {}
  • Para obter detalhes da API, consulte GetPatchBaselineem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMPatchBaselineForPatchGroup.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exibe a lista de referência de patches para um grupo de patches.

Get-SSMPatchBaselineForPatchGroup -PatchGroup "Production"

Saída:

BaselineId PatchGroup ---------- ---------- pb-045f10b4f382baeda Production

O código de exemplo a seguir mostra como usar Get-SSMPatchGroup.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista os registros do grupo de patches.

Get-SSMPatchGroup

Saída:

BaselineIdentity PatchGroup ---------------- ---------- Amazon.SimpleSystemsManagement.Model.PatchBaselineIdentity Production
  • Para obter detalhes da API, consulte DescribePatchGroupsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMPatchGroupState.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém o resumo da conformidade de patches de alto nível para um grupo de patches.

Get-SSMPatchGroupState -PatchGroup "Production"

Saída:

Instances : 4 InstancesWithFailedPatches : 1 InstancesWithInstalledOtherPatches : 4 InstancesWithInstalledPatches : 3 InstancesWithMissingPatches : 0 InstancesWithNotApplicablePatches : 0
  • Para obter detalhes da API, consulte DescribePatchGroupStateem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Get-SSMResourceComplianceSummaryList.

Ferramentas para PowerShell

Exemplo 1: esse exemplo obtém uma contagem resumida em nível de recurso. O resumo inclui informações sobre status de conformidade e não conformidade e contagens detalhadas de gravidade de itens de conformidade para produtos que correspondem a "Windows10". Como o MaxResult padrão é 100 se o parâmetro não for especificado e esse valor não for válido, o MaxResult parâmetro será adicionado e o valor será definido como 50.

$FilterValues = @{ "Key"="Product" "Type"="EQUAL" "Values"="Windows10" } Get-SSMResourceComplianceSummaryList -Filter $FilterValues -MaxResult 50

O código de exemplo a seguir mostra como usar Get-SSMResourceTag.

Ferramentas para PowerShell

Exemplo 1: esse exemplo lista as tags para uma janela de manutenção.

Get-SSMResourceTag -ResourceId "mw-03eb9db42890fb82d" -ResourceType "MaintenanceWindow"

Saída:

Key Value --- ----- Stack Production
  • Para obter detalhes da API, consulte ListTagsForResourceem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar New-SSMActivation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cria uma instância gerenciada.

New-SSMActivation -DefaultInstanceName "MyWebServers" -IamRole "SSMAutomationRole" -RegistrationLimit 10

Saída:

ActivationCode ActivationId -------------- ------------ KWChhOxBTiwDcKE9BlKC 08e51e79-1e36-446c-8e63-9458569c1363
  • Para obter detalhes da API, consulte CreateActivationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar New-SSMAssociation.

Ferramentas para PowerShell

Exemplo 1: Este exemplo associa um documento de configuração a uma instância, usando instance IDs.

New-SSMAssociation -InstanceId "i-0cb2b964d3e14fd9f" -Name "AWS-UpdateSSMAgent"

Saída:

Name : AWS-UpdateSSMAgent InstanceId : i-0000293ffd8c57862 Date : 2/23/2017 6:55:22 PM Status.Name : Associated Status.Date : 2/20/2015 8:31:11 AM Status.Message : Associated with AWS-UpdateSSMAgent Status.AdditionalInfo :

Exemplo 2: esse exemplo associa um documento de configuração a uma instância usando destinos.

$target = @{Key="instanceids";Values=@("i-0cb2b964d3e14fd9f")} New-SSMAssociation -Name "AWS-UpdateSSMAgent" -Target $target

Saída:

Name : AWS-UpdateSSMAgent InstanceId : Date : 3/1/2017 6:22:21 PM Status.Name : Status.Date : Status.Message : Status.AdditionalInfo :

Exemplo 3: esse exemplo associa um documento de configuração a uma instância usando destinos e parâmetros.

$target = @{Key="instanceids";Values=@("i-0cb2b964d3e14fd9f")} $params = @{ "action"="configure" "mode"="ec2" "optionalConfigurationSource"="ssm" "optionalConfigurationLocation"="" "optionalRestart"="yes" } New-SSMAssociation -Name "Configure-CloudWatch" -AssociationName "CWConfiguration" -Target $target -Parameter $params

Saída:

Name : Configure-CloudWatch InstanceId : Date : 5/17/2018 3:17:44 PM Status.Name : Status.Date : Status.Message : Status.AdditionalInfo :

Exemplo 4: esse exemplo cria uma associação com todas as instâncias na região, com AWS-GatherSoftwareInventory. Ele também fornece arquivos personalizados e locais de registro nos parâmetros a serem coletados

$params = [Collections.Generic.Dictionary[String,Collections.Generic.List[String]]]::new() $params["windowsRegistry"] ='[{"Path":"HKEY_LOCAL_MACHINE\SOFTWARE\Amazon\MachineImage","Recursive":false,"ValueNames":["AMIName"]}]' $params["files"] = '[{"Path":"C:\Program Files","Pattern":["*.exe"],"Recursive":true}, {"Path":"C:\ProgramData","Pattern":["*.log"],"Recursive":true}]' New-SSMAssociation -AssociationName new-in-mum -Name AWS-GatherSoftwareInventory -Target @{Key="instanceids";Values="*"} -Parameter $params -region ap-south-1 -ScheduleExpression "rate(720 minutes)"

Saída:

Name : AWS-GatherSoftwareInventory InstanceId : Date : 6/9/2019 8:57:56 AM Status.Name : Status.Date : Status.Message : Status.AdditionalInfo :
  • Para obter detalhes da API, consulte CreateAssociationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar New-SSMAssociationFromBatch.

Ferramentas para PowerShell

Exemplo 1: esse exemplo associa um documento de configuração a várias instâncias. A saída retorna uma lista de operações bem e malsucedidas, se aplicável.

$option1 = @{InstanceId="i-0cb2b964d3e14fd9f";Name=@("AWS-UpdateSSMAgent")} $option2 = @{InstanceId="i-0000293ffd8c57862";Name=@("AWS-UpdateSSMAgent")} New-SSMAssociationFromBatch -Entry $option1,$option2

Saída:

Failed Successful ------ ---------- {} {Amazon.SimpleSystemsManagement.Model.FailedCreateAssociation, Amazon.SimpleSystemsManagement.Model.FailedCreateAsso...

Exemplo 2: esse exemplo mostrará os detalhes completos de uma operação bem-sucedida.

$option1 = @{InstanceId="i-0cb2b964d3e14fd9f";Name=@("AWS-UpdateSSMAgent")} $option2 = @{InstanceId="i-0000293ffd8c57862";Name=@("AWS-UpdateSSMAgent")} (New-SSMAssociationFromBatch -Entry $option1,$option2).Successful
  • Para obter detalhes da API, consulte CreateAssociationBatchem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar New-SSMDocument.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cria um documento na sua conta. O documento deve estar em formato JSON. Para obter mais informações sobre como escrever um documento de configuração, consulte Documento de configuração na Referência da API do SSM.

New-SSMDocument -Content (Get-Content -Raw "c:\temp\RunShellScript.json") -Name "RunShellScript" -DocumentType "Command"

Saída:

CreatedDate : 3/1/2017 1:21:33 AM DefaultVersion : 1 Description : Run an updated script DocumentType : Command DocumentVersion : 1 Hash : 1d5ce820e999ff051eb4841ed887593daf77120fd76cae0d18a53cc42e4e22c1 HashType : Sha256 LatestVersion : 1 Name : RunShellScript Owner : 809632081692 Parameters : {commands} PlatformTypes : {Linux} SchemaVersion : 2.0 Sha1 : Status : Creating
  • Para obter detalhes da API, consulte CreateDocumentem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar New-SSMMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cria uma nova janela de manutenção com o nome especificado que é executada às 16h toda terça-feiras por 4 horas, com um limite de 1 hora, e que permite destinos não associados.

New-SSMMaintenanceWindow -Name "MyMaintenanceWindow" -Duration 4 -Cutoff 1 -AllowUnassociatedTarget $true -Schedule "cron(0 16 ? * TUE *)"

Saída:

mw-03eb53e1ea7383998
  • Para obter detalhes da API, consulte CreateMaintenanceWindowem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar New-SSMPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cria uma lista de referência de patches que aprova patches, sete dias após serem lançados pela Microsoft, para instâncias gerenciadas que executam o Windows Server 2019 em um ambiente de produção.

$rule = New-Object Amazon.SimpleSystemsManagement.Model.PatchRule $rule.ApproveAfterDays = 7 $ruleFilters = New-Object Amazon.SimpleSystemsManagement.Model.PatchFilterGroup $patchFilter = New-Object Amazon.SimpleSystemsManagement.Model.PatchFilter $patchFilter.Key="PRODUCT" $patchFilter.Values="WindowsServer2019" $severityFilter = New-Object Amazon.SimpleSystemsManagement.Model.PatchFilter $severityFilter.Key="MSRC_SEVERITY" $severityFilter.Values.Add("Critical") $severityFilter.Values.Add("Important") $severityFilter.Values.Add("Moderate") $classificationFilter = New-Object Amazon.SimpleSystemsManagement.Model.PatchFilter $classificationFilter.Key = "CLASSIFICATION" $classificationFilter.Values.Add( "SecurityUpdates" ) $classificationFilter.Values.Add( "Updates" ) $classificationFilter.Values.Add( "UpdateRollups" ) $classificationFilter.Values.Add( "CriticalUpdates" ) $ruleFilters.PatchFilters.Add($severityFilter) $ruleFilters.PatchFilters.Add($classificationFilter) $ruleFilters.PatchFilters.Add($patchFilter) $rule.PatchFilterGroup = $ruleFilters New-SSMPatchBaseline -Name "Production-Baseline-Windows2019" -Description "Baseline containing all updates approved for production systems" -ApprovalRules_PatchRule $rule

Saída:

pb-0z4z6221c4296b23z
  • Para obter detalhes da API, consulte CreatePatchBaselineem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Register-SSMDefaultPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: este exemplo registra uma lista de referência de patches como a lista de referência de patches padrão.

Register-SSMDefaultPatchBaseline -BaselineId "pb-03da896ca3b68b639"

Saída:

pb-03da896ca3b68b639

O código de exemplo a seguir mostra como usar Register-SSMPatchBaselineForPatchGroup.

Ferramentas para PowerShell

Exemplo 1: esse exemplo registra uma lista de referência de patches para um grupo de patches.

Register-SSMPatchBaselineForPatchGroup -BaselineId "pb-03da896ca3b68b639" -PatchGroup "Production"

Saída:

BaselineId PatchGroup ---------- ---------- pb-03da896ca3b68b639 Production

O código de exemplo a seguir mostra como usar Register-SSMTargetWithMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo registra uma instância com uma janela de manutenção.

$option1 = @{Key="InstanceIds";Values=@("i-0000293ffd8c57862")} Register-SSMTargetWithMaintenanceWindow -WindowId "mw-06cf17cbefcb4bf4f" -Target $option1 -OwnerInformation "Single instance" -ResourceType "INSTANCE"

Saída:

d8e47760-23ed-46a5-9f28-927337725398

Exemplo 2: esse exemplo registra várias instâncias com uma janela de manutenção.

$option1 = @{Key="InstanceIds";Values=@("i-0000293ffd8c57862","i-0cb2b964d3e14fd9f")} Register-SSMTargetWithMaintenanceWindow -WindowId "mw-06cf17cbefcb4bf4f" -Target $option1 -OwnerInformation "Single instance" -ResourceType "INSTANCE"

Saída:

6ab5c208-9fc4-4697-84b7-b02a6cc25f7d

Exemplo 3: Esse exemplo registra uma instância com uma janela de manutenção usando EC2 tags.

$option1 = @{Key="tag:Environment";Values=@("Production")} Register-SSMTargetWithMaintenanceWindow -WindowId "mw-06cf17cbefcb4bf4f" -Target $option1 -OwnerInformation "Production Web Servers" -ResourceType "INSTANCE"

Saída:

2994977e-aefb-4a71-beac-df620352f184

O código de exemplo a seguir mostra como usar Register-SSMTaskWithMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo registra uma tarefa com uma janela de manutenção usando um ID de instância. A saída é o ID da tarefa.

$parameters = @{} $parameterValues = New-Object Amazon.SimpleSystemsManagement.Model.MaintenanceWindowTaskParameterValueExpression $parameterValues.Values = @("Install") $parameters.Add("Operation", $parameterValues) Register-SSMTaskWithMaintenanceWindow -WindowId "mw-03a342e62c96d31b0" -ServiceRoleArn "arn:aws:iam::123456789012:role/MaintenanceWindowsRole" -MaxConcurrency 1 -MaxError 1 -TaskArn "AWS-RunShellScript" -Target @{ Key="InstanceIds";Values="i-0000293ffd8c57862" } -TaskType "RUN_COMMAND" -Priority 10 -TaskParameter $parameters

Saída:

f34a2c47-ddfd-4c85-a88d-72366b69af1b

Exemplo 2: esse exemplo registra uma tarefa com uma janela de manutenção usando um ID de destino. A saída é o ID da tarefa.

$parameters = @{} $parameterValues = New-Object Amazon.SimpleSystemsManagement.Model.MaintenanceWindowTaskParameterValueExpression $parameterValues.Values = @("Install") $parameters.Add("Operation", $parameterValues) register-ssmtaskwithmaintenancewindow -WindowId "mw-03a342e62c96d31b0" -ServiceRoleArn "arn:aws:iam::123456789012:role/MaintenanceWindowsRole" -MaxConcurrency 1 -MaxError 1 -TaskArn "AWS-RunShellScript" -Target @{ Key="WindowTargetIds";Values="350d44e6-28cc-44e2-951f-4b2c985838f6" } -TaskType "RUN_COMMAND" -Priority 10 -TaskParameter $parameters

Saída:

f34a2c47-ddfd-4c85-a88d-72366b69af1b

Exemplo 3: esse exemplo cria um objeto de parâmetro para o documento de comandos de execução AWS-RunPowerShellScript e cria uma tarefa com uma janela de manutenção determinada usando o ID de destino. A saída devolvida é o ID da tarefa.

$parameters = [Collections.Generic.Dictionary[String,Collections.Generic.List[String]]]::new() $parameters.Add("commands",@("ipconfig","dir env:\computername")) $parameters.Add("executionTimeout",@(3600)) $props = @{ WindowId = "mw-0123e4cce56ff78ae" ServiceRoleArn = "arn:aws:iam::123456789012:role/MaintenanceWindowsRole" MaxConcurrency = 1 MaxError = 1 TaskType = "RUN_COMMAND" TaskArn = "AWS-RunPowerShellScript" Target = @{Key="WindowTargetIds";Values="fe1234ea-56d7-890b-12f3-456b789bee0f"} Priority = 1 RunCommand_Parameter = $parameters Name = "set-via-cmdlet" } Register-SSMTaskWithMaintenanceWindow @props

Saída:

f1e2ef34-5678-12e3-456a-12334c5c6cbe

Exemplo 4: Este exemplo registra uma tarefa do AWS Systems Manager Automation usando um documento chamadoCreate-Snapshots.

$automationParameters = @{} $automationParameters.Add( "instanceId", @("{{ TARGET_ID }}") ) $automationParameters.Add( "AutomationAssumeRole", @("{arn:aws:iam::111111111111:role/AutomationRole}") ) $automationParameters.Add( "SnapshotTimeout", @("PT20M") ) Register-SSMTaskWithMaintenanceWindow -WindowId mw-123EXAMPLE456` -ServiceRoleArn "arn:aws:iam::123456789012:role/MW-Role"` -MaxConcurrency 1 -MaxError 1 -TaskArn "CreateVolumeSnapshots"` -Target @{ Key="WindowTargetIds";Values="4b5acdf4-946c-4355-bd68-4329a43a5fd1" }` -TaskType "AUTOMATION"` -Priority 4` -Automation_DocumentVersion '$DEFAULT' -Automation_Parameter $automationParameters -Name "Create-Snapshots"

O código de exemplo a seguir mostra como usar Remove-SSMActivation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exclui uma ativação. Não haverá saída se o comando for bem-sucedido.

Remove-SSMActivation -ActivationId "08e51e79-1e36-446c-8e63-9458569c1363"
  • Para obter detalhes da API, consulte DeleteActivationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-SSMAssociation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exclui a associação entre uma instância e um documento. Não haverá saída se o comando for bem-sucedido.

Remove-SSMAssociation -InstanceId "i-0cb2b964d3e14fd9f" -Name "AWS-UpdateSSMAgent"
  • Para obter detalhes da API, consulte DeleteAssociationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-SSMDocument.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exclui um documento. Não haverá saída se o comando for bem-sucedido.

Remove-SSMDocument -Name "RunShellScript"
  • Para obter detalhes da API, consulte DeleteDocumentem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-SSMMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo remove uma janela de manutenção.

Remove-SSMMaintenanceWindow -WindowId "mw-06d59c1a07c022145"

Saída:

mw-06d59c1a07c022145
  • Para obter detalhes da API, consulte DeleteMaintenanceWindowem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-SSMParameter.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exclui um parâmetro. Não haverá saída se o comando for bem-sucedido.

Remove-SSMParameter -Name "helloWorld"
  • Para obter detalhes da API, consulte DeleteParameterem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-SSMPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: esse exemplo exclui uma lista de referência de patches.

Remove-SSMPatchBaseline -BaselineId "pb-045f10b4f382baeda"

Saída:

pb-045f10b4f382baeda
  • Para obter detalhes da API, consulte DeletePatchBaselineem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-SSMResourceTag.

Ferramentas para PowerShell

Exemplo 1: esse exemplo remove uma tag de uma janela de manutenção. Não haverá saída se o comando for bem-sucedido.

Remove-SSMResourceTag -ResourceId "mw-03eb9db42890fb82d" -ResourceType "MaintenanceWindow" -TagKey "Production"
  • Para obter detalhes da API, consulte RemoveTagsFromResourceem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Send-SSMCommand.

Ferramentas para PowerShell

Exemplo 1: esse exemplo executa um comando echo em uma instância de destino.

Send-SSMCommand -DocumentName "AWS-RunPowerShellScript" -Parameter @{commands = "echo helloWorld"} -Target @{Key="instanceids";Values=@("i-0cb2b964d3e14fd9f")}

Saída:

CommandId : d8d190fc-32c1-4d65-a0df-ff5ff3965524 Comment : CompletedCount : 0 DocumentName : AWS-RunPowerShellScript ErrorCount : 0 ExpiresAfter : 3/7/2017 10:48:37 PM InstanceIds : {} MaxConcurrency : 50 MaxErrors : 0 NotificationConfig : Amazon.SimpleSystemsManagement.Model.NotificationConfig OutputS3BucketName : OutputS3KeyPrefix : OutputS3Region : Parameters : {[commands, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]]} RequestedDateTime : 3/7/2017 9:48:37 PM ServiceRole : Status : Pending StatusDetails : Pending TargetCount : 0 Targets : {instanceids}

Exemplo 2: esse exemplo mostra como executar um comando que aceita parâmetros aninhados.

Send-SSMCommand -DocumentName "AWS-RunRemoteScript" -Parameter @{ sourceType="GitHub";sourceInfo='{"owner": "me","repository": "amazon-ssm","path": "Examples/Install-Win32OpenSSH"}'; "commandLine"=".\Install-Win32OpenSSH.ps1"} -InstanceId i-0cb2b964d3e14fd9f
  • Para obter detalhes da API, consulte SendCommandem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Start-SSMAutomationExecution.

Ferramentas para PowerShell

Exemplo 1: Este exemplo executa um documento especificando uma função de automação, uma ID de origem da AMI e uma função de EC2 instância da Amazon.

Start-SSMAutomationExecution -DocumentName AWS-UpdateLinuxAmi -Parameter @{'AutomationAssumeRole'='arn:aws:iam::123456789012:role/SSMAutomationRole';'SourceAmiId'='ami-f173cc91';'InstanceIamRole'='EC2InstanceRole'}

Saída:

3a532a4f-0382-11e7-9df7-6f11185f6dd1
  • Para obter detalhes da API, consulte StartAutomationExecutionem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Start-SSMSession.

Ferramentas para PowerShell

Exemplo 1: Este exemplo inicia uma conexão com um destino para uma sessão do Session Manager, habilitando o encaminhamento de portas.

Start-SSMSession -Target 'i-064578e5e7454488f' -DocumentName 'AWS-StartPortForwardingSession' -Parameter @{ localPortNumber = '8080'; portNumber = '80' }

Saída:

SessionId StreamUrl ---------- ---------- random-id0 wss://ssmmessages.amazonaws.com/v1/data-channel/random-id
  • Para obter detalhes da API, consulte StartSessionem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Stop-SSMAutomationExecution.

Ferramentas para PowerShell

Exemplo 1: esse exemplo interrompe uma execução do Automation. Não haverá saída se o comando for bem-sucedido.

Stop-SSMAutomationExecution -AutomationExecutionId "4105a4fc-f944-11e6-9d32-8fb2db27a909"
  • Para obter detalhes da API, consulte StopAutomationExecutionem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Stop-SSMCommand.

Ferramentas para PowerShell

Exemplo 1: esse exemplo tenta cancelar um comando. Não haverá saída se a operação for bem-sucedida.

Stop-SSMCommand -CommandId "9ded293e-e792-4440-8e3e-7b8ec5feaa38"
  • Para obter detalhes da API, consulte CancelCommandem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Unregister-SSMManagedInstance.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cancela o registro de uma instância gerenciada. Não haverá saída se o comando for bem-sucedido.

Unregister-SSMManagedInstance -InstanceId "mi-08ab247cdf1046573"

O código de exemplo a seguir mostra como usar Unregister-SSMPatchBaselineForPatchGroup.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cancela o registro de um grupo de patches de uma lista de referência de patches.

Unregister-SSMPatchBaselineForPatchGroup -BaselineId "pb-045f10b4f382baeda" -PatchGroup "Production"

Saída:

BaselineId PatchGroup ---------- ---------- pb-045f10b4f382baeda Production

O código de exemplo a seguir mostra como usar Unregister-SSMTargetFromMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo remove um destino de uma janela de manutenção.

Unregister-SSMTargetFromMaintenanceWindow -WindowTargetId "6ab5c208-9fc4-4697-84b7-b02a6cc25f7d" -WindowId "mw-06cf17cbefcb4bf4f"

Saída:

WindowId WindowTargetId -------- -------------- mw-06cf17cbefcb4bf4f 6ab5c208-9fc4-4697-84b7-b02a6cc25f7d

O código de exemplo a seguir mostra como usar Unregister-SSMTaskFromMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo remove uma tarefa de uma janela de manutenção.

Unregister-SSMTaskFromMaintenanceWindow -WindowTaskId "f34a2c47-ddfd-4c85-a88d-72366b69af1b" -WindowId "mw-03a342e62c96d31b0"

Saída:

WindowId WindowTaskId -------- ------------ mw-03a342e62c96d31b0 f34a2c47-ddfd-4c85-a88d-72366b69af1b

O código de exemplo a seguir mostra como usar Update-SSMAssociation.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atualiza uma associação com uma nova versão de documento.

Update-SSMAssociation -AssociationId "93285663-92df-44cb-9f26-2292d4ecc439" -DocumentVersion "1"

Saída:

Name : AWS-UpdateSSMAgent InstanceId : Date : 3/1/2017 6:22:21 PM Status.Name : Status.Date : Status.Message : Status.AdditionalInfo :
  • Para obter detalhes da API, consulte UpdateAssociationem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Update-SSMAssociationStatus.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atualiza o status da associação entre uma instância e um documento de configuração.

Update-SSMAssociationStatus -Name "AWS-UpdateSSMAgent" -InstanceId "i-0000293ffd8c57862" -AssociationStatus_Date "2015-02-20T08:31:11Z" -AssociationStatus_Name "Pending" -AssociationStatus_Message "temporary_status_change" -AssociationStatus_AdditionalInfo "Additional-Config-Needed"

Saída:

Name : AWS-UpdateSSMAgent InstanceId : i-0000293ffd8c57862 Date : 2/23/2017 6:55:22 PM Status.Name : Pending Status.Date : 2/20/2015 8:31:11 AM Status.Message : temporary_status_change Status.AdditionalInfo : Additional-Config-Needed
  • Para obter detalhes da API, consulte UpdateAssociationStatusem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Update-SSMDocument.

Ferramentas para PowerShell

Exemplo 1: isso cria uma nova versão de um documento com o conteúdo atualizado do arquivo json que você especificar. O documento deve estar em formato JSON. Você pode obter a versão do documento com o cmdlet “Get- SSMDocumentVersionList”.

Update-SSMDocument -Name RunShellScript -DocumentVersion "1" -Content (Get-Content -Raw "c:\temp\RunShellScript.json")

Saída:

CreatedDate : 3/1/2017 2:59:17 AM DefaultVersion : 1 Description : Run an updated script DocumentType : Command DocumentVersion : 2 Hash : 1d5ce820e999ff051eb4841ed887593daf77120fd76cae0d18a53cc42e4e22c1 HashType : Sha256 LatestVersion : 2 Name : RunShellScript Owner : 809632081692 Parameters : {commands} PlatformTypes : {Linux} SchemaVersion : 2.0 Sha1 : Status : Updating
  • Para obter detalhes da API, consulte UpdateDocumentem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Update-SSMDocumentDefaultVersion.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atualiza a versão padrão de um documento. Você pode obter as versões disponíveis do documento com o cmdlet “Get- SSMDocumentVersionList”.

Update-SSMDocumentDefaultVersion -Name "RunShellScript" -DocumentVersion "2"

Saída:

DefaultVersion Name -------------- ---- 2 RunShellScript

O código de exemplo a seguir mostra como usar Update-SSMMaintenanceWindow.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atualiza o nome de uma janela de manutenção.

Update-SSMMaintenanceWindow -WindowId "mw-03eb9db42890fb82d" -Name "My-Renamed-MW"

Saída:

AllowUnassociatedTargets : False Cutoff : 1 Duration : 2 Enabled : True Name : My-Renamed-MW Schedule : cron(0 */30 * * * ? *) WindowId : mw-03eb9db42890fb82d

Exemplo 2: esse exemplo habilita uma janela de manutenção.

Update-SSMMaintenanceWindow -WindowId "mw-03eb9db42890fb82d" -Enabled $true

Saída:

AllowUnassociatedTargets : False Cutoff : 1 Duration : 2 Enabled : True Name : My-Renamed-MW Schedule : cron(0 */30 * * * ? *) WindowId : mw-03eb9db42890fb82d

Exemplo 3: esse exemplo desabilita uma janela de manutenção.

Update-SSMMaintenanceWindow -WindowId "mw-03eb9db42890fb82d" -Enabled $false

Saída:

AllowUnassociatedTargets : False Cutoff : 1 Duration : 2 Enabled : False Name : My-Renamed-MW Schedule : cron(0 */30 * * * ? *) WindowId : mw-03eb9db42890fb82d
  • Para obter detalhes da API, consulte UpdateMaintenanceWindowem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Update-SSMManagedInstanceRole.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atualiza o perfil de uma instância gerenciada. Não haverá saída se o comando for bem-sucedido.

Update-SSMManagedInstanceRole -InstanceId "mi-08ab247cdf1046573" -IamRole "AutomationRole"

O código de exemplo a seguir mostra como usar Update-SSMPatchBaseline.

Ferramentas para PowerShell

Exemplo 1: esse exemplo adiciona dois patches como rejeitados e um patch como aprovado a uma lista de referência de patches existente.

Update-SSMPatchBaseline -BaselineId "pb-03da896ca3b68b639" -RejectedPatch "KB2032276","MS10-048" -ApprovedPatch "KB2124261"

Saída:

ApprovalRules : Amazon.SimpleSystemsManagement.Model.PatchRuleGroup ApprovedPatches : {KB2124261} BaselineId : pb-03da896ca3b68b639 CreatedDate : 3/3/2017 5:02:19 PM Description : Baseline containing all updates approved for production systems GlobalFilters : Amazon.SimpleSystemsManagement.Model.PatchFilterGroup ModifiedDate : 3/3/2017 5:22:10 PM Name : Production-Baseline RejectedPatches : {KB2032276, MS10-048}
  • Para obter detalhes da API, consulte UpdatePatchBaselineem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Write-SSMComplianceItem.

Ferramentas para PowerShell

Exemplo 1: esse exemplo grava um item de conformidade personalizado para a instância gerenciada especificada

$item = [Amazon.SimpleSystemsManagement.Model.ComplianceItemEntry]::new() $item.Id = "07Jun2019-3" $item.Severity="LOW" $item.Status="COMPLIANT" $item.Title="Fin-test-1 - custom" Write-SSMComplianceItem -ResourceId mi-012dcb3ecea45b678 -ComplianceType Custom:VSSCompliant2 -ResourceType ManagedInstance -Item $item -ExecutionSummary_ExecutionTime "07-Jun-2019"
  • Para obter detalhes da API, consulte PutComplianceItemsem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Write-SSMInventory.

Ferramentas para PowerShell

Exemplo 1: esse exemplo atribui informações de localização de rack a uma instância. Não haverá saída se o comando for bem-sucedido.

$data = New-Object "System.Collections.Generic.Dictionary[System.String,System.String]" $data.Add("RackLocation", "Bay B/Row C/Rack D/Shelf F") $items = New-Object "System.Collections.Generic.List[System.Collections.Generic.Dictionary[System.String, System.String]]" $items.Add($data) $customInventoryItem = New-Object Amazon.SimpleSystemsManagement.Model.InventoryItem $customInventoryItem.CaptureTime = "2016-08-22T10:01:01Z" $customInventoryItem.Content = $items $customInventoryItem.TypeName = "Custom:TestRackInfo2" $customInventoryItem.SchemaVersion = "1.0" $inventoryItems = @($customInventoryItem) Write-SSMInventory -InstanceId "i-0cb2b964d3e14fd9f" -Item $inventoryItems
  • Para obter detalhes da API, consulte PutInventoryem Referência de Ferramentas da AWS para PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Write-SSMParameter.

Ferramentas para PowerShell

Exemplo 1: esse exemplo cria um parâmetro. Não haverá saída se o comando for bem-sucedido.

Write-SSMParameter -Name "Welcome" -Type "String" -Value "helloWorld"

Exemplo 2: esse exemplo altera um parâmetro. Não haverá saída se o comando for bem-sucedido.

Write-SSMParameter -Name "Welcome" -Type "String" -Value "Good day, Sunshine!" -Overwrite $true
  • Para obter detalhes da API, consulte PutParameterem Referência de Ferramentas da AWS para PowerShell cmdlet.