Get-WSManInstance

Exibe informações de gerenciamento para uma instância do recurso especificada por um URI de recurso.

Syntax

Get-WSManInstance
   [-ApplicationName <String>]
   [-ComputerName <String>]
   [-ConnectionURI <Uri>]
   [-Dialect <Uri>]
   [-Fragment <String>]
   [-OptionSet <Hashtable>]
   [-Port <Int32>]
   [-ResourceURI] <Uri>
   [-SelectorSet <Hashtable>]
   [-SessionOption <SessionOption>]
   [-UseSSL]
   [-Credential <PSCredential>]
   [-Authentication <AuthenticationMechanism>]
   [-CertificateThumbprint <String>]
   [<CommonParameters>]
Get-WSManInstance
   [-ApplicationName <String>]
   [-BasePropertiesOnly]
   [-ComputerName <String>]
   [-ConnectionURI <Uri>]
   [-Dialect <Uri>]
   [-Enumerate]
   [-Filter <String>]
   [-OptionSet <Hashtable>]
   [-Port <Int32>]
   [-Associations]
   [-ResourceURI] <Uri>
   [-ReturnType <String>]
   [-SessionOption <SessionOption>]
   [-Shallow]
   [-UseSSL]
   [-Credential <PSCredential>]
   [-Authentication <AuthenticationMechanism>]
   [-CertificateThumbprint <String>]
   [<CommonParameters>]

Description

O Get-WSManInstance cmdlet recupera uma instância de um recurso de gerenciamento especificado por um URI (Uniform Resource Identifier) de recurso. As informações recuperadas podem ser um conjunto de informações XML complexo, que é um objeto ou um valor simples. Esse cmdlet é equivalente ao comando padrão Web Services for Management (WS-Management) Get .

Este cmdlet usa a camada de conexão/transporte do WS-Management para recuperar informações.

Exemplos

Exemplo 1: Obter todas as informações do WMI

Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="winrm"} -ComputerName "Server01"

Esse comando retorna todas as informações que o WMI (Instrumentação de Gerenciamento do Windows) expõe sobre o serviço WinRM no computador server01 remoto.

Exemplo 2: Obter o status do serviço Spooler

Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -Fragment Status -ComputerName "Server01"

Esse comando retorna apenas o status do serviço Spooler no computador server01 remoto.

Exemplo 3: Obter referências de ponto de extremidade para todos os serviços

Get-WSManInstance -Enumerate -ResourceURI wmicimv2/win32_service -ReturnType EPR

Este comando retorna referências de ponto de extremidade que correspondem a todos os serviços existentes no computador local.

Exemplo 4: Obter serviços que atendem a critérios especificados

Get-WSManInstance -Enumerate -ResourceURI wmicimv2/* -Filter "select * from win32_service where StartMode = 'Auto' and State = 'Stopped'" -ComputerName "Server01"

Este comando lista todos os serviços que atendem aos seguintes critérios no computador remoto Server01:

  • O tipo de inicialização do serviço é Automático.
  • O serviço foi interrompido.

Exemplo 5: Obter configuração de ouvinte que corresponda aos critérios no computador local

Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"}

Este comando lista a configuração de ouvinte do WS-Management no computador local para o ouvinte que corresponde aos critérios no seletor definido.

Exemplo 6: Obter configuração de ouvinte que corresponda aos critérios em um computador remoto

Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"} -ComputerName "Server01"

Este comando lista a configuração de ouvinte do WS-Management no computador remoto servidor01 para o ouvinte que corresponde aos critérios no seletor definido.

Exemplo 7: Obter instâncias associadas relacionadas a uma instância especificada

Get-WSManInstance -Enumerate -Dialect Association -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*

Este comando obtém as instâncias associadas que estão relacionadas à instância especificada (winrm).

Você deve incluir o filtro entre aspas, conforme mostrado no exemplo.

Exemplo 8: Obter instâncias de associação relacionadas a uma instância especificada

Get-WSManInstance -Enumerate -Dialect Association -Associations -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*

Este comando obtém as instâncias de associação que estão relacionadas à instância especificada (winrm). Como o valor Dialect é associação e o parâmetro Associations é usado, esse comando retorna instâncias de associação, não instâncias associadas.

Você deve incluir o filtro entre aspas, conforme mostrado no exemplo.

Parâmetros

-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 é no seguinte formato:

<transport>://<servidor>:<porta>/<ApplicationName>

Por exemplo: http://server01:8080/WSMAN

Os Serviços de Informações da Internet (IIS), que hospedam a sessão, encaminham solicitações com esse ponto de extremidade para o aplicativo especificado. Essa configuração padrão do WSMAN é apropriada para a maioria dos usos. Esse parâmetro foi projetado para ser usado se muitos computadores estabelecerem conexões remotas com um computador que esteja executando o PowerShell. Nesse caso, o IIS hospeda o WS-Management para eficiência.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Associations

Indica que esse cmdlet obtém instâncias de associação, não instâncias associadas. Você pode usar esse parâmetro somente quando o parâmetro Dialect tem um valor de Association.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

Especifica o mecanismo de autenticação a ser usado no servidor. Os valores aceitáveis para esse parâmetro são:

  • Basic - Básico é um esquema em que o nome de usuário e senha são enviados em texto não criptografado para o servidor ou proxy.
  • Default - Utilizar o método de autenticação implementado pelo protocolo WS-Management. Esse é 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.
  • Negotiate - 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 criada para os comandos executados em um computador remoto, mas coletam dados ou executam comandos adicionais em outros computadores remotos.

Cuidado

O CredSSP delega as credenciais do usuário do computador local para um computador remoto. Essa prática aumenta o risco de segurança da operação remota. Se o computador remoto estiver comprometido, no momento em que as credenciais forem passadas a ele essas credenciais poderão ser usadas para controlar a sessão de rede.

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BasePropertiesOnly

Indica que esse cmdlet enumera somente as propriedades que fazem parte da classe base especificada pelo parâmetro ResourceURI . Esse parâmetro não terá efeito se o parâmetro Shallow for especificado.

Type:SwitchParameter
Aliases:UBPO, Base
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

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

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

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Especifica o computador no qual 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, deve-se usar um nome de domínio totalmente qualificado. É possível redirecionar um valor desse parâmetro para o cmdlet.

Type:String
Aliases:CN
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

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

<Transport>://<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.

Type:Uri
Aliases:CURI, CU
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Especifica uma conta de usuário que tem permissão para executar esta 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 Get-Credential cmdlet. Quando você digita um nome de usuário, esse cmdlet solicita uma senha.

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Dialect

Especifica o dialeto a ser usado no predicado de filtro. Isso pode ser qualquer dialeto compatível com o serviço remoto. Os seguintes aliases podem ser usados para o URI do dialeto:

  • WQL - http://schemas.microsoft.com/wbem/wsman/1/WQL
  • Seletor- http://schemas.microsoft.com/wbem/wsman/1/wsman/SelectorFilter
  • Associação- http://schemas.dmtf.org/wbem/wsman/1/cimbinding/associationFilter
Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Enumerate

Indica que esse cmdlet retorna todas as instâncias de um recurso de gerenciamento.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Filter

Especifica a expressão de filtro para a enumeração. Se você especificar esse parâmetro, também deverá especificar Dialeto.

Os valores válidos desse parâmetro dependem do dialeto especificado em Dialeto. Por exemplo, se Dialeto for WQL, o parâmetro Filter deverá conter uma cadeia de caracteres e a cadeia de caracteres deverá conter uma consulta WQL válida, como a seguinte consulta:

"Select * from Win32_Service where State != Running"

Se Dialeto for Associação , Filtro deverá conter uma cadeia de caracteres e a cadeia de caracteres deverá conter um filtro válido, como o seguinte filtro:

-filter:Object=EPR\[;AssociationClassName=AssocClassName\]\[;ResultClassName=ClassName\]\[;Role=RefPropertyName\]\[;ResultRole=RefPropertyName\]}

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fragment

Especifica uma seção na instância a ser atualizada ou recuperada para a operação especificada. Por exemplo, para obter o status de um serviço de spooler, especifique o seguinte:

-Fragment Status

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OptionSet

Especifica um conjunto de opções para um serviço para modificar ou refinar a natureza da solicitação. Eles se assemelham a opções usadas em shells de linha de comando porque são específicas 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}

Type:Hashtable
Aliases:OS
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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 o 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 somente para computadores confiáveis.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceURI

Especifica o URI da classe ou instância de recurso. O URI identifica um tipo específico de recurso, como discos ou processos, em um computador.

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

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

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

Type:Uri
Aliases:RURI
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ReturnType

Especifica o tipo de dados a serem retornados. Os valores aceitáveis para esse parâmetro são:

  • Object
  • EPR
  • ObjectAndEPR

O valor padrão é Object.

Se você especificar Object ou não especificar esse parâmetro, esse cmdlet retornará apenas objetos. Se você especificar EPR (referência de ponto de extremidade), esse cmdlet retornará apenas as referências de ponto de extremidade dos objetos. Referências do ponto de extremidade contêm informações sobre o URI do recurso e os seletores da instância. Se você especificar ObjectAndEPR, esse cmdlet retornará o objeto e suas referências de ponto de extremidade associadas.

Type:String
Aliases:RT
Accepted values:object, epr, objectandepr
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SelectorSet

Especifica um conjunto de pares de valor que são utilizados para selecionar instâncias do recurso de gerenciamento específico. O parâmetro SelectorSet é usado quando existe mais de uma instância do recurso. O valor do parâmetro 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"}

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SessionOption

Especifica 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, digite Get-Help New-WSManSessionOption.

Type:SessionOption
Aliases:SO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Shallow

Indica que esse cmdlet retorna apenas instâncias da classe base especificada no URI do recurso. Se você não especificar esse parâmetro, esse cmdlet retornará instâncias da classe base especificada no URI e em todas as suas classes derivadas.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

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

O WS-Management criptografa todo o conteúdo do Windows PowerShell que é 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á.

Type:SwitchParameter
Aliases:SSL
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

None

Não é possível canalizar objetos para esse cmdlet.

Saídas

XmlElement

Esse cmdlet retorna um objeto XMLElement .