Get-PSSessionConfiguration
Obtém as configurações de sessão registradas no computador.
Sintaxe
Get-PSSessionConfiguration [[-Name] <string[]>] [<CommonParameters>]
Descrição
O cmdlet Get-PSSessionConfiguration obtém as configurações de sessão que foram registradas no computador local. Esse é um cmdlet avançado, projetado para ser usado pelos administradores de sistema para gerenciar as configurações de sessão personalizadas para seus usuários.
Para criar e registrar uma configuração de sessão, use o cmdlet Register-PSSessionConfiguration.
Parâmetros
-Name <string[]>
Obtém apenas as configurações de sessão com o nome especificado ou o padrão de nome. Insira um ou mais nomes de configuração de sessão. Os caracteres curinga são permitidos.
Necessário? |
false |
Posição? |
1 |
Valor padrão |
Todas as configurações de sessão no computador local |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
true |
<CommonParameters>
Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.
Entradas e saídas
O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.
Entradas |
Nenhum Você não pode canalizar a entrada para este cmdlet. |
Saídas |
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration |
Observações
Para executar esse cmdlet no Windows Vista, no Windows Server 2008 e em versões mais recentes do Windows, abra o Windows PowerShell com a opção "Executar como administrador".
Para exibir as configurações da sessão no computador, você deve ser membro do grupo Administradores no computador.
Para executar um comando Get-PSSessionConfiguration em um computador remoto, a autenticação CredSSP (Credential Security Service Provider) deve estar habilitada nas configurações de cliente do computador local (usando o cmdlet Enable-WSManCredSSP) e nas configurações de serviço do computador remoto, e você deve usar o valor CredSSP do parâmetro Authentication ao estabelecer a sessão remota. Caso contrário, o acesso é negado.
Exemplo 1
C:\PS>get-pssessionconfiguration
Descrição
-----------
Esse comando obtém as configurações de sessão no computador.
Exemplo 2
C:\PS>get-pssessionconfiguration -name Microsoft*
Name PSVersion StartupScript Permission
---- --------- ------------- ----------
microsoft.powershell 2.0 BUILTIN\Administrators AccessAll...
microsoft.powershell32 2.0 BUILTIN\Administrators AccessAll...
Descrição
-----------
Esse comando usa o parâmetro Name de Get-PSSessionConfiguration para obter só as configurações de sessão com nomes que começam com "Microsoft".
Esse comando obtém as duas configurações de sessão padrão que acompanham o Windows PowerShell.
Exemplo 3
C:\PS>Get-PSSessionConfiguration -name microsoft.powershell | get-member
TypeName: Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Capability NoteProperty System.Object[] Capability=System.Object[]
ExactMatch NoteProperty System.String ExactMatch=False
Filename NoteProperty System.String Filename=%windir%\system32\pwrshplugin.dll
lang NoteProperty System.String lang=en-US
Name NoteProperty System.String Name=microsoft.powershell
PSVersion NoteProperty System.String PSVersion=2.0
ResourceUri NoteProperty System.String ResourceUri=https://schemas.microsoft.com/powershell/microsoft.powershell
SDKVersion NoteProperty System.String SDKVersion=1
SecurityDescriptorSddl NoteProperty System.String SecurityDescriptorSddl=O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
SupportsOptions NoteProperty System.String SupportsOptions=true
Uri NoteProperty System.String Uri=https://schemas.microsoft.com/powershell/microsoft.powershell
xmlns NoteProperty System.String xmlns=https://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
XmlRenderingType NoteProperty System.String XmlRenderingType=text
Permission ScriptProperty System.Object Permission {get=trap { continue; }...
C:\PS> Get-PSSessionConfiguration -name microsoft.powershell | format-list -property *
Name : microsoft.powershell
Filename : %windir%\system32\pwrshplugin.dll
SDKVersion : 1
XmlRenderingType : text
lang : en-US
PSVersion : 2.0
ResourceUri : https://schemas.microsoft.com/powershell/microsoft.powershell
SupportsOptions : true
Capability : {Shell}
Uri : https://schemas.microsoft.com/powershell/microsoft.powershell
SecurityDescriptorSddl : O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
ExactMatch : False
xmlns : https://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
Permission : BUILTIN\Administrators AccessAllowed
Descrição
-----------
Esses comandos examinam o objeto PSSessionConfiguration retornado por Get-PSSessionConfiguration.
O primeiro comando usa o cmdlet Get-PSSessionConfiguration para obter a configuração padrão Microsoft.PowerShell.
O segundo comando usa um operador de pipeline (|) para enviar o objeto retornado por Get-PSSessionConfiguration para o cmdlet Get-Member. A saída mostra as propriedades e os métodos do objeto.
O terceiro comando envia o mesmo objeto para o cmdlet Format-List. O parâmetro Property com o valor * (tudo) direciona Format-List a exibir todas as propriedades e os valores de propriedades do objeto em uma lista.
A saída desse comando tem informações muito úteis, inclusive o local do .dll que implementa o tipo de configuração, o recurso URI (Uniforme Resource Identifier) do ponto de extremidade que é criado e a SDDL (Linguagem de Definição do Descritor de Segurança) para a configuração.
Exemplo 4
C:\PS>dir wsman:\localhost\plugin
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
Name Type Keys
---- ---- ----
Event Forwarding Plugin Container {Name=Event Forwarding Plugin}
MaintenanceShell Container {Name=MaintenanceShell}
microsoft.powershell Container {Name=microsoft.powershell}
microsoft.powershell32 Container {Name=microsoft.powershell32}
WMI Provider Container {Name=WMI Provider}
Descrição
-----------
Esse comando usa o cmdlet Get-ChildItem (alias = dir) na unidade de provedor WSMan: para examinar o conteúdo do nó Plugin.
Esse é outro modo de examinar as configurações da sessão no computador.
O nó PlugIn contém objetos ContainerElement (Microsoft.WSMan.Management.WSManConfigContainerElement) que representam as configurações de sessão registradas do Windows PowerShell, juntamente com outros plug-ins do WS-Management.
Exemplo 5
C:\PS>enable-wsmanCredSSP -delegate server02
C:\PS> connect-wsman server02
C:\PS> set-item wsman:\server02*\service\auth\credSSP -value $true
C:\PS> invoke-command -scriptblock {Get-PSSessionConfiguration} -computername Server02 -authentication CredSSP -credential Domain01\Admin01
Name PSVersion StartupScript Permission PSComputerName
---- --------- ------------- ---------- --------------
microsoft.powershell 2.0 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
microsoft.powershell32 2.0 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
MyX86Shell 2.0 c:\test\x86Shell.ps1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
Descrição
-----------
Este exemplo mostra como executar um comando Get-PSSessionConfiguration em um computador remoto. O comando requer que a delegação CredSSP seja habilitada nas configurações de cliente no computador local e nas configurações de serviço no computador remoto. Para executar os comandos deste exemplo, você deve ser membro do grupo Administradores no computador local e no computador remoto.
O primeiro comando usa o cmdlet Enable-WSManCredSSP para habilitar a delegação CredSSP do computador local Server01 no computador remoto Server02. Isso define a configuração de cliente CredSSP no computador local.
O segundo comando usa o cmdlet Connect-WSMan para estabelecer conexão com o computador Server02. Essa ação adiciona um nó do computador Server02 à unidade WSMan: no computador local, permitindo que você exiba e altere as configurações WS-Management no computador Server02.
O terceiro comando usa o cmdlet Set-Item para alterar o valor do item CredSSP no nó Service do computador Server02 para True. Isso define as configurações de serviço no computador remoto.
O quarto comando usa o cmdlet Invoke-Command para executar um comando Get-PSSessionConfiguration no computador Server02. O comando usa o parâmetro Credential e o parâmetro Authentication com o valor CredSSP.
Exemplo 6
C:\PS>(get-PSSessionConfiguration -name CustomShell).resourceURI
https://schemas.microsoft.com/powershell/microsoft.CustomShell
Descrição
-----------
Esse comando usa o cmdlet Get-PSSessionConfiguration para obter o URI de recurso de uma configuração de sessão.
Esse comando é útil na definição do valor da variável de preferência $PSSessionConfigurationName, que assume um URI de recurso.
A variável $PSSessionConfigurationName especifica a configuração padrão usada quando você cria uma sessão. Essa variável é definida no computador local, mas especifica uma configuração no computador remoto. Para obter mais informações sobre a variável $PSSessionConfiguration, consulte about_Preference_Variables.
Consulte também
Conceitos
about_Session_Configurations
Disable-PSSessionConfiguration
Enable-PSSessionConfiguration
Register-PSSessionConfiguration
Set-PSSessionConfiguration
Unregister-PSSessionConfiguration
WSMan Provider