Partilhar via


Invoke-WSManAction

Invoca uma ação no objeto especificado pelo URI de recurso e pelos seletores.

Sintaxe

URI (Predefinição)

Invoke-WSManAction
    [-Action] <String>
    [[-SelectorSet] <Hashtable>]
    [-ResourceURI] <Uri>
    [-ConnectionURI <Uri>]
    [-FilePath <String>]
    [-OptionSet <Hashtable>]
    [-SessionOption <SessionOption>]
    [-ValueSet <Hashtable>]
    [-Credential <PSCredential>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

ComputerName

Invoke-WSManAction
    [-Action] <String>
    [[-SelectorSet] <Hashtable>]
    [-ResourceURI] <Uri>
    [-ApplicationName <String>]
    [-ComputerName <String>]
    [-FilePath <String>]
    [-OptionSet <Hashtable>]
    [-Port <Int32>]
    [-SessionOption <SessionOption>]
    [-UseSSL]
    [-ValueSet <Hashtable>]
    [-Credential <PSCredential>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

Description

O Invoke-WSManAction executa uma ação no objeto especificado por RESOURCE_URI, onde os parâmetros são especificados por pares de valores de chave.

Este cmdlet usa a camada de conexão/transporte WSMan para executar a ação.

Exemplos

Exemplo 1

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -Authentication default
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Este comando chama o método StartService da instância de classe WMI Win32_Service que corresponde ao serviço Spooler.

O valor de retorno indica se a ação foi bem-sucedida. Nesse caso, um valor de retorno de 0 indica sucesso. Um valor de retorno de 5 indica que o serviço já foi iniciado.

Exemplo 2

Invoke-WSManAction -Action stopservice -ResourceURI wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:input.xml -Authentication default
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Este comando chama o método StopService no serviço Spooler usando a entrada de um arquivo. O ficheiro, Input.xml, contém o seguinte conteúdo:

<p:StopService_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

O valor de retorno indica se a ação foi bem-sucedida. Nesse caso, um valor de retorno de 0 indica sucesso. Um valor de retorno de 5 indica que o serviço já foi iniciado.

Exemplo 3

Invoke-WSManAction -Action create -ResourceURI wmicimv2/win32_process -ValueSet @{commandline="notepad.exe";currentdirectory="C:\"}
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ProcessId   : 6356
ReturnValue : 0

Este comando chama o método Create da classe Win32_Process. Ele passa o método dois valores de parâmetro, Notepad.exe e "C:". Como resultado, um novo processo é criado para executar o bloco de notas e o diretório atual do novo processo é definido como "C:".

Exemplo 4

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication default
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Este comando chama o método StartService da instância de classe WMI Win32_Service que corresponde ao serviço Spooler. Como o parâmetro ComputerName é especificado, o comando é executado no computador remoto server01.

O valor de retorno indica se a ação foi bem-sucedida. Nesse caso, um valor de retorno de 0 indica sucesso. Um valor de retorno de 5 indica que o serviço já foi iniciado.

Parâmetros

-Action

Especifica o método a ser executado no objeto de gerenciamento especificado pelo ResourceURI e seletores.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:1
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-ApplicationName

Especifica o nome do aplicativo na conexão. O valor padrão do parâmetro ApplicationName é WSMAN. O identificador completo para o ponto de extremidade remoto está no seguinte formato:

<transporte>://<server>:<port>/<ApplicationName>

Por exemplo:

http://server01:8080/WSMAN

O IIS (Serviços de Informações da Internet), que hospeda a sessão, encaminha solicitações com esse ponto de extremidade para o aplicativo especificado. Essa configuração padrão de "WSMAN" é apropriada para a maioria dos usos. Esse parâmetro foi projetado para ser usado quando vários computadores estabelecem conexões remotas com um computador que executa o Windows PowerShell. Nesse caso, o IIS hospeda Serviços Web para Gerenciamento (WS-Management) para eficiência.

Propriedades dos parâmetros

Tipo:String
Default value:Wsman
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

ComputerName
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Authentication

Especifica o mecanismo de autenticação a ser usado no servidor. Os valores possíveis são:

  • Básico: Básico é um esquema em que o nome de usuário e a senha são enviados em texto não criptografado para o servidor ou proxy.
  • Padrão: Use o método de autenticação implementado pelo protocolo WS-Management. Este é o padrão.
  • Digest: Digest é um esquema de desafio-resposta que usa uma cadeia de dados especificada pelo servidor para o desafio.
  • Kerberos: O computador cliente e o servidor se autenticam mutuamente usando certificados Kerberos.
  • Negociar: Negociar é um esquema de desafio-resposta que negocia com o servidor ou proxy para determinar o esquema a ser usado para autenticação. Por exemplo, esse valor de parâmetro permite a negociação para determinar se o protocolo Kerberos ou NTLM é usado.
  • CredSSP: Use a autenticação CredSSP (Credential Security Support Provider), que permite ao usuário delegar credenciais. Esta opção foi concebida para comandos que são executados num computador remoto, mas recolhem dados ou executam comandos adicionais noutros computadores remotos.

Cuidado: CredSSP delega as credenciais do usuário do computador local para um computador remoto. Esta prática aumenta o risco de segurança da operação remota. Se o computador remoto estiver comprometido, quando as credenciais forem passadas para ele, as credenciais poderão ser usadas para controlar a sessão de rede.

Propriedades dos parâmetros

Tipo:AuthenticationMechanism
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:autenticação, sou

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-CertificateThumbprint

Especifica o certificado de chave pública digital (X509) de uma conta de usuário que tem permissão para executar essa ação. Insira a impressão digital (thumbprint) do certificado.

Os certificados são usados na autenticação baseada em certificado de cliente. Eles podem ser mapeados apenas para contas de usuário locais; eles não funcionam com contas de domínio.

Para obter uma impressão digital de certificado, use o comando Get-Item ou Get-ChildItem na unidade Windows PowerShell Cert:.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-ComputerName

Especifica o computador no qual você deseja executar a operação de gerenciamento. O valor pode ser um nome de domínio totalmente qualificado, um nome NetBIOS ou um endereço IP. Use o nome do computador local, use localhost ou use um ponto (.) para especificar o computador local. O computador local é o padrão. Quando o computador remoto está em um domínio diferente do usuário, você deve usar um nome de domínio totalmente qualificado deve ser usado. Você pode canalizar um valor para esse parâmetro para o cmdlet.

Propriedades dos parâmetros

Tipo:String
Default value:Localhost
Suporta carateres universais:False
NãoMostrar:False
Aliases:China

Conjuntos de parâmetros

ComputerName
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-ConnectionURI

Especifica o ponto de extremidade de conexão. O formato desta cadeia de caracteres é:

Transporte <>://<Server>:<Port>/<ApplicationName>

A cadeia de caracteres a seguir é um valor formatado corretamente para esse parâmetro:

http://Server01:8080/WSMAN

O URI deve ser totalmente qualificado.

Propriedades dos parâmetros

Tipo:Uri
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:CURI, CU

Conjuntos de parâmetros

URI
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Credential

Especifica uma conta de usuário que tem permissão para executar essa ação. O padrão é o usuário atual. Digite um nome de usuário, como "User01", "Domain01\User01" ou User@Domain.com. Ou insira um objeto PSCredential, como um retornado pelo cmdlet Get-Credential. Quando introduz um nome de utilizador, ser-lhe-á solicitada uma palavra-passe.

Propriedades dos parâmetros

Tipo:PSCredential
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:CRED, c

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-FilePath

Especifica o caminho de um arquivo usado para atualizar um recurso de gerenciamento. Você especifica o recurso de gerenciamento usando o parâmetro ResourceURI e o parâmetro SelectorSet. Por exemplo, o comando a seguir usa o parâmetro FilePath:

invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:c:\input.xml -authentication padrão

Este comando chama o método StopService no serviço Spooler usando a entrada de um arquivo. O ficheiro, Input.xml, contém o seguinte conteúdo:

<p:StopService_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-OptionSet

Passa um conjunto de opções para um serviço para modificar ou refinar a natureza da solicitação. Eles são semelhantes aos switches usados em shells de linha de comando porque são específicos do serviço. Qualquer número de opções pode ser especificado.

O exemplo a seguir demonstra a sintaxe que passa os valores 1, 2 e 3 para os parâmetros a, b e c:

-OptionSet @{a=1; b=2; c=3}

Propriedades dos parâmetros

Tipo:Hashtable
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:o

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Port

Especifica a porta a ser usada quando o cliente se conecta ao serviço WinRM. Quando o transporte é HTTP, a porta padrão é 80. Quando o transporte é HTTPS, a porta padrão é 443. Quando você usa HTTPS como transporte, o valor do parâmetro ComputerName deve corresponder ao CN (nome comum) do certificado do servidor. No entanto, se o parâmetro SkipCNCheck for especificado como parte do parâmetro SessionOption, o nome comum do certificado do servidor não precisará corresponder ao nome do host do servidor. O parâmetro SkipCNCheck deve ser usado apenas para máquinas confiáveis.

Propriedades dos parâmetros

Tipo:Int32
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

ComputerName
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-ResourceURI

Contém o URI (Uniform Resource Identifier) da classe ou instância de recurso. O URI é usado para identificar um tipo específico de recurso, como discos ou processos, em um computador.

Um URI consiste em um prefixo e um caminho para um recurso. Por exemplo:

https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor

Propriedades dos parâmetros

Tipo:Uri
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:Ruri

Conjuntos de parâmetros

(All)
Position:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-SelectorSet

Especifica um conjunto de pares de valores que são usados para selecionar instâncias específicas de recursos de gerenciamento. SelectorSet é usado quando existe mais de uma instância do recurso. O valor de SelectorSet deve ser uma tabela de hash.

O exemplo a seguir mostra como inserir um valor para esse parâmetro:

-SelectorSet @{Name="WinRM";ID="yyy"}

Propriedades dos parâmetros

Tipo:Hashtable
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:2
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-SessionOption

Define um conjunto de opções estendidas para a sessão WS-Management. Insira um objeto SessionOption que você cria usando o cmdlet New-WSManSessionOption. Para obter mais informações sobre as opções disponíveis, consulte New-WSManSessionOption.

Propriedades dos parâmetros

Tipo:SessionOption
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:so

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-UseSSL

Especifica que o protocolo SSL (Secure Sockets Layer) é usado para estabelecer uma conexão com o computador remoto. Por padrão, o SSL não é usado.

WS-Management criptografa todo o conteúdo do PowerShell transmitido pela rede. O parâmetro UseSSL permite especificar a proteção adicional de HTTPS em vez de HTTP. Se o SSL não estiver disponível na porta usada para a conexão e você especificar esse parâmetro, o comando falhará.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

ComputerName
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-ValueSet

Especifica uma tabela de hash que ajuda a modificar um recurso de gerenciamento. Você especifica o recurso de gerenciamento usando os parâmetros ResourceURI e SelectorSet. O valor do parâmetro ValueSet deve ser uma tabela de hash.

Propriedades dos parâmetros

Tipo:Hashtable
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

None

Este cmdlet não aceita nenhuma entrada.

Saídas

None

Este cmdlet não gera nenhuma saída.