New-PSWorkflowSession
Cria uma sessão de fluxo de trabalho.
Sintaxe
Default (Predefinição)
New-PSWorkflowSession
[[-ComputerName] <String[]>]
[-Credential <Object>]
[-Name <String[]>]
[-Port <Int32>]
[-UseSSL]
[-ApplicationName <String>]
[-ThrottleLimit <Int32>]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-EnableNetworkAccess]
[<CommonParameters>]
Description
O cmdlet New-PSWorkflowSession cria uma sessão gerenciada pelo usuário (PSSession) especialmente projetada para executar fluxos de trabalho do Windows PowerShell. Ele usa o Microsoft.PowerShell.Workflow configuração de sessão, que inclui scripts, arquivos de tipo e formatação e opções necessárias para fluxos de trabalho.
Você pode usar New-PSWorkflowSession ou seu alias, nwsn.
Você também pode adicionar parâmetros comuns do fluxo de trabalho a esse comando. Para obter mais informações sobre parâmetros comuns de fluxo de trabalho, consulte about_WorkflowCommonParameters
Este cmdlet foi introduzido no Windows PowerShell 3.0.
Exemplos
Exemplo 1: Criar uma sessão de fluxo de trabalho em um computador remoto
Este exemplo cria a sessão WorkflowTests no computador remoto ServerNode01.
$params = @{
ComputerName = "ServerNode01"
Name = "WorkflowTests"
SessionOption = (New-PSSessionOption -OutputBufferingMode Drop)
}
New-PSWorkflowSession @params
O valor do parâmetro SessionOption é um comando New-PSSessionOption que define o modo de buffer de saída na sessão como Drop.
Exemplo 2: Criar sessões de fluxo de trabalho em vários computadores remotos
Este exemplo cria sessões de fluxo de trabalho nos computadores ServerNode01 e Server12. O comando usa o parâmetro Credential para ser executado com as permissões do administrador do domínio.
"ServerNode01", "Server12" |
New-PSWorkflowSession -Name WorkflowSession -Credential Domain01\Admin01 -ThrottleLimit 150
O comando usa o parâmetro ThrottleLimit para aumentar o limite de aceleração por comando para 150. Esse valor tem precedência sobre o limite de aceleração padrão de 100 definido na configuração de sessão Microsoft.PowerShell.Workflow.
Parâmetros
-ApplicationName
Especifica o segmento de nome do aplicativo do URI de conexão.
O valor padrão é o valor da variável de preferência $PSSessionApplicationName no computador local. Se essa variável de preferência não estiver definida, o valor padrão será WSMAN. Esse valor é apropriado para a maioria dos usos. Para obter mais informações, consulte sobre_Variáveis_de_Preferência.
O serviço WinRM usa o nome do aplicativo para selecionar um ouvinte para atender à solicitação de conexão. O valor desse parâmetro deve corresponder ao valor da propriedade URLPrefix de um ouvinte no computador remoto.
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: | True |
| Valor dos restantes argumentos: | False |
-Authentication
Especifica o mecanismo usado para autenticar as credenciais do usuário. Os valores aceitáveis para este parâmetro são:
DefaultBasicCredsspDigestKerberosNegotiateNegotiateWithImplicitCredential
O valor predefinido é Default.
A autenticação CredSSP está disponível apenas no Windows Vista, Windows Server 2008 e versões posteriores do sistema operacional Windows.
Para obter mais informações sobre os valores deste parâmetro, consulte AuthenticationMechanism Enumeration.
Atenção
A autenticação CredSSP (Credential Security Service Provider), na qual as credenciais do usuário são passadas para um computador remoto para ser autenticado, foi projetada para comandos que exigem autenticação em mais de um recurso, como acessar um compartilhamento de rede remoto. Este mecanismo aumenta o risco de segurança da operação remota. Se o computador remoto estiver comprometido, as credenciais que são passadas para ele podem ser usadas para controlar a sessão de rede.
Propriedades dos parâmetros
| Tipo: | AuthenticationMechanism |
| Default value: | Default |
| Valores aceites: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
| 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 |
-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 cmdlet Get-Item ou o cmdlet Get-ChildItem na unidade de Cert: do Windows PowerShell.
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
Cria uma conexão persistente (PSSession) com o computador especificado. Se você inserir vários nomes de computador, o Windows PowerShell criará vários PSSessions, um para cada computador. O padrão é o computador local.
Digite o nome NetBIOS, um endereço IP ou um nome de domínio totalmente qualificado de um ou mais computadores remotos. Para especificar o computador local, digite o nome do computador, localhostou um ponto (.). Quando o computador está em um domínio diferente do usuário, o nome de domínio totalmente qualificado é necessário.
Você também pode canalizar um nome de computador, entre aspas para New-PSWorkflowSession.
Para usar um endereço IP no valor do parâmetro
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | Local computer |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | CN |
Conjuntos de parâmetros
(All)
| Position: | 0 |
| Obrigatório: | False |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| 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\User01ou User@Domain.com, ou insira um objeto PSCredential, como um retornado pelo cmdlet Get-Credential.
Quando você digita um nome de usuário, esse cmdlet solicita uma senha.
Propriedades dos parâmetros
| Tipo: | Object |
| Default value: | Current user |
| 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: | True |
| Valor dos restantes argumentos: | False |
-EnableNetworkAccess
Indica que esse cmdlet adiciona um token de segurança interativo às sessões de loopback. O token interativo permite executar comandos na sessão de loopback que obtêm dados de outros computadores. Por exemplo, você pode executar um comando na sessão que copia arquivos XML de um computador remoto para o computador local.
Uma sessão de loopback é um PSSession .), localhostou o nome do computador local.
Por padrão, são criadas sessões de loopback que têm um token de rede, que pode não fornecer permissão suficiente para autenticação em computadores remotos.
O parâmetro EnableNetworkAccess é efetivo apenas em sessões de loopback. Se você especificar o parâmetro EnableNetworkAccess ao criar uma sessão em um computador remoto, o comando será bem-sucedido, mas o parâmetro será ignorado.
Você também pode permitir o acesso remoto em uma sessão de loopback usando o valor CredSSP do parâmetro Authentication, que delega as credenciais da sessão a outros computadores.
Para proteger o computador contra acesso mal-intencionado, as sessões de loopback desconectadas que têm tokens interativos, aquelas criadas usando o parâmetro Disconnect-PSSession.
Esse parâmetro foi introduzido no Windows PowerShell 3.0.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| 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 |
-Name
Especifica um nome amigável para a sessão de fluxo de trabalho. Você pode usar o nome com outros cmdlets, como Get-PSSession e Enter-PSSession. Não é necessário que o nome seja exclusivo do computador ou da sessão atual.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | Session# |
| 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 |
-Port
Especifica a porta de rede no computador remoto que é usada para essa conexão. Para se conectar a um computador remoto, o computador remoto deve estar a escutar na porta à qual a ligação é feita. As portas padrão são 5985 (porta WinRM para HTTP) e 5986 (porta WinRM para HTTPS).
Antes de usar outra porta, você deve configurar o ouvinte do WinRM no computador remoto para ouvir nessa porta. Use os seguintes comandos para configurar o ouvinte:
winrm delete winrm/config/listener?Address=*+Transport=HTTP
winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}
Não use o parâmetro Port, a menos que seja necessário. A configuração de porta no comando se aplica a todos os computadores ou sessões nos quais o comando é executado. Uma configuração de porta alternativa pode impedir que o comando seja executado em todos os computadores.
Propriedades dos parâmetros
| Tipo: | Int32 |
| 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 |
-SessionOption
Especifica opções avançadas para a sessão. Insira um objeto SessionOption, como um que você cria usando o cmdlet New-PSSessionOption.
Os valores padrão para as opções são determinados pelo valor da variável de preferência $PSSessionOption, se ela estiver definida. Caso contrário, os valores padrão são estabelecidos pelas opções definidas na configuração da sessão.
Os valores de opção de sessão têm precedência sobre os valores padrão para sessões definidas na variável de preferência $PSSessionOption e na configuração da sessão. No entanto, eles não têm precedência sobre os valores máximos, cotas ou limites definidos na configuração da sessão. Para obter mais informações sobre configurações de sessão, consulte about_Session_Configurations.
Para obter uma descrição das opções de sessão, incluindo os valores padrão, consulte New-PSSessionOption.
Para obter informações sobre a variável de preferência $PSSessionOption, consulte about_Preference_Variables.
Propriedades dos parâmetros
| Tipo: | PSSessionOption |
| 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 |
-ThrottleLimit
Especifica o número máximo de conexões simultâneas que podem ser estabelecidas para executar esse comando.
Se você omitir esse parâmetro ou inserir um valor de 0 (zero), o valor padrão para o Microsoft.PowerShellWorkflow configuração de sessão, 100, será usado.
O limite de aceleração aplica-se apenas ao comando atual, não à sessão ou ao computador.
Propriedades dos parâmetros
| Tipo: | Int32 |
| Default value: | 100 |
| 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 |
-UseSSL
Indica que esse cmdlet usa o protocolo SSL (Secure Sockets Layer) 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 Windows PowerShell transmitido pela rede. O parâmetro UseSSL é uma proteção adicional que envia os dados através de uma conexão HTTPS em vez de uma conexão HTTP.
Se você especificar esse parâmetro, mas o SSL não estiver disponível na porta usada para o comando, o comando falhará.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| 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
PSSession
Você pode canalizar uma sessão para este cmdlet.
String
Você pode canalizar um nome de computador para este cmdlet.
Saídas
PSSession
Notas
O Windows PowerShell inclui os seguintes aliases para New-PSWorkflowSession:
nwsn
Um comando New-PSWorkflowSession é equivalente ao seguinte comando:
New-PSSession -ConfigurationName Microsoft.PowerShell.Workflow