Cria um objeto que contém opções avançadas para uma PSSession.
Sintaxe
New-PSSessionOption [-ApplicationArguments <PSPrimitiveDictionary>] [-CancelTimeOut <int>] [-Culture <CultureInfo>] [-IdleTimeOut <int>] [-MaximumReceivedDataSizePerCommand <int>] [-MaximumReceivedObjectSize <int>] [-MaximumRedirection <int>] [-NoCompression] [-NoEncryption] [-NoMachineProfile] [-OpenTimeOut <int>] [-OperationTimeOut <int>] [-ProxyAccessType {<None> | <IEConfig> | <WinHttpConfig> | <AutoDetect> | <NoProxyServer>}] [-ProxyAuthentication {<Default> | <Basic> | <Negotiate> | <NegotiateWithImplicitCredential> | <Credssp> | <Digest> | <Kerberos>}] [-ProxyCredential <PSCredential>] [-SkipCACheck] [-SkipCNCheck] [-SkipRevocationCheck] [-UICulture <CultureInfo>] [-UseUTF16] [<CommonParameters>]
Descrição
O cmdlet New-PSSessionOption cria um objeto que contém opções avançadas para uma PSSession. Você poderá usar o objeto como o valor do parâmetro SessionOption de cmdlets que criam uma PSSession, como New-PSSession, Enter-PSSession e Invoke-Command.
Sem parâmetros, New-PSSessionOption gera um objeto que contém os valores padrão para todas as opções. Como todas as propriedades podem ser editadas, você poderá usar o objeto resultante como um modelo e criar objetos de opção padrão para sua empresa.
Parâmetros
-ApplicationArguments <PSPrimitiveDictionary>
Especifica uma tabela de hash que é enviada diretamente à configuração de sessão sem interpretação. Essa tabela de hash está disponível para a configuração de sessão como uma propriedade da classe PSSenderInfo.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-CancelTimeOut <int>
Determina quanto tempo o Windows PowerShell aguarda uma operação de cancelamento (CTRL + C) ser concluída antes de encerrá-la. Insira um valor em milissegundos.
O valor padrão é 60000 (um minuto). Um valor 0 (zero) significa que não há tempo limite; o comando continuará indefinidamente.
Necessário? |
false |
Posição? |
named |
Valor padrão |
60000 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Culture <CultureInfo>
Especifica a cultura a ser usada para a PSSession. Insira um nome de cultura no formato <códigodeidioma2>-<país/códigoderegião2>, como "ja-jP", uma variável que contenha um objeto CultureInfo ou um comando que obtenha um objeto CultureInfo, como "Get-Culture".
O valor padrão é $null, e a cultura definida no sistema operacional quando a PSSession é criada é usado na PSSession.
Necessário? |
false |
Posição? |
named |
Valor padrão |
Current culture |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-IdleTimeOut <int>
Determina quanto tempo a PSSession permanecerá aberta se o computador remoto não receber nenhuma comunicação do computador local, incluindo o sinal de pulsação. Quando o intervalo expira, a PSSession é fechada.
Insira um valor em milissegundos. O valor padrão é 240000 (4 minutos). O valor mínimo permitido é 60000 (1 minuto).
Se os computadores local e remoto especificarem um valor de tempo limite ocioso, a PSSession usará o valor de tempo limite mais curto. O computador local pode definir um valor de tempo limite ocioso usando esse parâmetro ou definindo um tempo limite ocioso na variável de preferência $PSSessionOption. O computador remoto pode especificar um valor de tempo limite ocioso na configuração WS-Management (WSMAN:\localhost\shell\idletimeout).
Necessário? |
false |
Posição? |
named |
Valor padrão |
240000 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-MaximumReceivedDataSizePerCommand <int>
Especifica o número máximo de bytes que o computador local pode receber do computador remoto em um único comando. Insira um valor em bytes. Por padrão, não há nenhum limite de tamanho dos dados.
O objetivo dessa opção é proteger os recursos no computador cliente.
Necessário? |
false |
Posição? |
named |
Valor padrão |
No limit |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-MaximumReceivedObjectSize <int>
Especifica o tamanho máximo de um objeto que o computador local pode receber do computador remoto. Insira um valor em bytes. Por padrão, não há nenhum limite de tamanho dos dados.
O objetivo dessa opção é proteger os recursos no computador cliente.
Necessário? |
false |
Posição? |
named |
Valor padrão |
No limit |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-MaximumRedirection <int>
Determina quantas vezes o Windows PowerShell redireciona uma conexão para um URI (Uniform Resource Identifier) alternativo antes de a conexão falhar. O valor padrão é 5. O valor 0 (zero) impede todo o redirecionamento.
Essa opção é usada na PSSession somente quando o parâmetro AllowRedirection é usado no comando que cria a PSSession.
Necessário? |
false |
Posição? |
named |
Valor padrão |
5 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-NoCompression
Desativa a compactação de pacotes na PSSession. A compactação usa mais ciclos de processador, mas torna a transmissão mais rápida.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-NoEncryption
Desativa a criptografia de dados.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-NoMachineProfile
Impede o carregando do perfil de usuário do Windows. Com isso, a PSSession poderá ser criada mais rapidamente, mas as configurações do Registro específicas ao usuário, itens como variáveis de ambiente e certificados, não estarão disponíveis na PSSession.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-OpenTimeOut <int>
Determina quanto tempo o computador cliente aguarda a conexão de sessão ser estabelecida. Quando o intervalo expira, o comando para estabelecer a conexão falha. Insira um valor em milissegundos.
O valor padrão é 180000 (3 minutos). Um valor 0 (zero) significa que não há tempo limite; o comando continuará indefinidamente.
Necessário? |
false |
Posição? |
named |
Valor padrão |
180000 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-OperationTimeOut <int>
Determina o tempo máximo de execução de qualquer operação na PSSession. Quando o intervalo expira, a operação falha. Insira um valor em milissegundos.
O valor padrão é 180000 (3 minutos). Um valor 0 (zero) significa que não há tempo limite; a operação continuará indefinidamente.
Necessário? |
false |
Posição? |
named |
Valor padrão |
180000 |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ProxyAccessType <ProxyAccessType>
Determina qual mecanismo é usado para resolver o nome de host. Os valores válidos são: IEConfig, WinHttpConfig, AutoDetect, NoProxyServer e None. O valor padrão é None.
Para obter mais informações sobre os valores desse parâmetro, consulte a descrição da enumeração System.Management.Automation.Remoting.ProxyAccessType na Biblioteca MSDN, em https://go.microsoft.com/fwlink/?LinkId=144756.
Necessário? |
false |
Posição? |
named |
Valor padrão |
nenhum |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ProxyAuthentication <AuthenticationMechanism>
Especifica o método de autenticação usado para a resolução de proxy. Os valores válidos são: o Basic, Digest e Negotiate. O valor padrão é Negotiate.
Para obter mais informações sobre os valores desse parâmetro, consulte a descrição da enumeração System.Management.Automation.Runspaces.AuthenticationMechanism na biblioteca MSDN, em https://go.microsoft.com/fwlink/?LinkID=144382.
Necessário? |
false |
Posição? |
named |
Valor padrão |
Negotiate |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ProxyCredential <PSCredential>
Especifica as credenciais a serem usadas para a autenticação de proxy. Insira uma variável que contenha um objeto PSCredential ou um comando que obtenha um objeto PSCredential, como Get-Credential. Se essa opção não for definida, nenhuma credencial será especificada.
Necessário? |
false |
Posição? |
named |
Valor padrão |
nenhum |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-SkipCACheck
Especifica que, durante a conexão por HTTPS, o cliente não valida que o certificado do servidor esteja assinado por uma CA (autoridade de certificação) confiável.
Use essa opção somente quando o computador remoto for confiável com o uso de outro mecanismo, por exemplo, quando o computador remoto faz parte de uma rede fisicamente segura e isolada ou está listado como um host confiável em uma configuração WinRM.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-SkipCNCheck
Especifica que um CN (nome comum) de certificado do servidor não precisa corresponder ao nome do host do servidor. Essa opção é usada apenas em operações remotas que usam o protocolo HTTP.
Use-a somente para computadores confiáveis.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-SkipRevocationCheck
Não valida o status de revogação do certificado do servidor.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-UICulture <CultureInfo>
Especifica a cultura de interface do usuário a ser usada para a PSSession.
Insira um nome de cultura no formato <códigodeidioma2>-<país/códigoderegião2>, como "ja-jP", uma variável que contenha um objeto CultureInfo ou um comando que obtenha um objeto CultureInfo, como Get-Culture.
O valor padrão é $null, e a cultura de interface do usuário definida no sistema operacional quando a PSSession é criada é usado na PSSession.
Necessário? |
false |
Posição? |
named |
Valor padrão |
Current UI culture |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-UseUTF16
Codifica a solicitação no formato UTF16, em vez de no formato UTF8.
Necessário? |
false |
Posição? |
named |
Valor padrão |
False (UTF8 encoding) |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
<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 |
None Você não pode canalizar a entrada para este cmdlet. |
Saídas |
System.Management.Automation.Remoting.PSSessionOption |
Observações
Se o parâmetro SessionOption não for usado em um comando para criar uma PSSession, as opções de sessão serão determinadas pelos valores de propriedade da variável de preferência $PSSessionOption, caso esteja definida. Para obter mais informações sobre a variável $PSSessionOption, consulte about_Preference_Variables.
Exemplo 1
C:\PS>New-PSSessionOption MaximumConnectionRedirectionCount : 5 NoCompression : False NoMachineProfile : False ProxyAccessType : IEConfig ProxyAuthentication : Negotiate ProxyCredential : SkipCACheck : False SkipCNCheck : False SkipRevocationCheck : False OperationTimeout : 00:03:00 NoEncryption : False UseUTF16 : False Culture : UICulture : MaximumReceivedDataSizePerCommand : MaximumReceivedObjectSize : ApplicationArguments : OpenTimeout : 00:03:00 CancelTimeout : 00:01:00 IdleTimeout : 00:04:00 Descrição ----------- Esse comando cria um objeto de opção de sessão com todos os valores padrão.
Exemplo 2
C:\PS>$pso = new-pssessionoption -Culture "fr-fr" -MaximumReceivedObjectSize 10MB C:\PS> new-pssession -computerName Server01 -SessionOption $pso Descrição ----------- Este exemplo mostra como usar um objeto de opção de sessão para configurar uma sessão. O primeiro comando cria um novo objeto de opção de sessão e salva-o no valor da variável $pso. O segundo comando usa o cmdlet New-PSSession para criar uma PSSession no computador remoto Server01. O comando usa o novo objeto de opção de sessão no valor da variável $pso como o valor do parâmetro SessionOption do comando.
Exemplo 3
C:\PS>enter-pssession -computername Server01 -sessionOption (new-pssessionoption -noEncryption -noCompression) Descrição ----------- Esse comando usa o cmdlet Enter-PSSession para iniciar uma sessão interativa com o computador Server01. O valor do parâmetro SessionOption é um comando New-PSSessionOption com os parâmetros de opção NoEncryption e NoCompression. O comando New-PSSessionOption é colocado entre parênteses para garantir que seja executado antes do comando Enter-PSSession.
Exemplo 4
C:\PS>$a = new-pssessionoption MaximumConnectionRedirectionCount : 5 NoCompression : False NoMachineProfile : False ProxyAccessType : IEConfig ProxyAuthentication : Negotiate ProxyCredential : SkipCACheck : False SkipCNCheck : False SkipRevocationCheck : False OperationTimeout : 00:03:00 NoEncryption : False UseUTF16 : False Culture : UICulture : MaximumReceivedDataSizePerCommand : MaximumReceivedObjectSize : ApplicationArguments : OpenTimeout : 00:03:00 CancelTimeout : 00:01:00 IdleTimeout : 00:04:00 C:\PS> $a.UICulture = (get-UICulture) C:\PS> $a.OpenTimeout = (new-timespan -minutes 4) C:\PS> $a.MaximumConnectionRedirectionCount = 1 C:\PS> $a MaximumConnectionRedirectionCount : 1 NoCompression : False NoMachineProfile : False ProxyAccessType : IEConfig ProxyAuthentication : Negotiate ProxyCredential : SkipCACheck : False SkipCNCheck : False SkipRevocationCheck : False OperationTimeout : 00:03:00 NoEncryption : False UseUTF16 : False Culture : UICulture : en-US MaximumReceivedDataSizePerCommand : MaximumReceivedObjectSize : ApplicationArguments : OpenTimeout : 00:04:00 CancelTimeout : 00:01:00 IdleTimeout : 00:04:00 Descrição ----------- Este exemplo demonstra que você pode editar o objeto de opção de sessão. Todas as propriedades têm valores de leitura/gravação. Use este método para criar um objeto de sessão padrão para sua empresa e, em seguida, crie versões personalizadas dele para usos específicos.
Exemplo 5
C:\PS>$PSSessionOption = New-PSSessionOption -OpenTimeOut 120000 Descrição ----------- Esse comando cria uma variável de preferência $PSSessionOption. Quando a variável de preferência $PSSessionOption existir na sessão, ela estabelecerá valores padrão para opções nas PSSessions criadas com os cmdlets New-PSSession, Enter-PSSession e Invoke-Command. Para tornar a variável $PSSessionOption disponível em todas as sessões, adicione-a à sua sessão do Windows PowerShell e ao seu perfil do Windows PowerShell. Para obter mais informações sobre a variável $PSSessionOption, consulte about_Preference_Variables. Para obter mais informações sobre perfis, consulte about_Profiles.
Exemplo 6
C:\PS>$skipCN = new-pssessionoption -SkipCNCheck C:\PS> new-pssession -computername 171.09.21.207 -UseSSL -credential domain01\user01 -sessionOption $skipCN Descrição ----------- Este exemplo mostra como usar um objeto SessionOption para cumprir os requisitos para uma configuração de sessão remota. O primeiro comando usa o cmdlet New-PSSessionOption para criar um objeto de opção de sessão com a propriedade SkipCNCheck. O comando salva o objeto de sessão resultante na variável $skipCN. O segundo comando usa o cmdlet New-PSSession para criar uma nova PSSession em um computador remoto. A variável de verificação $skipCN é usada no valor do parâmetro SessionOption. Como o computador é identificado pelo seu endereço IP, o valor do parâmetro ComputerName não corresponde a nenhum dos nomes comuns no certificado usado para SSL. Com isso, a opção SkipCNCheck é necessária.
See Also