New-PSWorkflowSession
Skapar en arbetsflödessession.
Syntax
New-PSWorkflowSession
[[-ComputerName] <String[]>]
[-Credential <Object>]
[-Name <String[]>]
[-Port <Int32>]
[-UseSSL]
[-ApplicationName <String>]
[-ThrottleLimit <Int32>]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-EnableNetworkAccess]
[<CommonParameters>]
Description
Cmdleten New-PSWorkflowSession skapar en användarhanterad session (PSSession) som är särskilt utformad för att köra Windows PowerShell arbetsflöden. Den använder sessionskonfigurationen Microsoft.PowerShell.Workflow , som innehåller skript, typ- och formateringsfiler och alternativ som krävs för arbetsflöden.
Du kan använda New-PSWorkflowSession eller dess alias, nwsn.
Du kan också lägga till vanliga parametrar för arbetsflödet i det här kommandot. Mer information om vanliga parametrar för arbetsflöden finns i about_WorkflowCommonParameters
Denna cmdlet introducerades i Windows PowerShell 3.0.
Exempel
Exempel 1: Skapa en arbetsflödessession på en fjärrdator
Det här exemplet skapar WorkflowTests-sessionen på fjärrdatorn ServerNode01.
$params = @{
ComputerName = "ServerNode01"
Name = "WorkflowTests"
SessionOption = (New-PSSessionOption -OutputBufferingMode Drop)
}
New-PSWorkflowSession @params
Värdet för parametern SessionOption är ett New-PSSessionOption kommando som anger utdatabuffertningsläget i sessionen till Släpp.
Exempel 2: Skapa arbetsflödessessioner på flera fjärrdatorer
Det här exemplet skapar arbetsflödessessioner på ServerNode01- och Server12-datorerna. Kommandot använder parametern Credential för att köras med domänadministratörens behörigheter.
"ServerNode01", "Server12" |
New-PSWorkflowSession -Name WorkflowSession -Credential Domain01\Admin01 -ThrottleLimit 150
Kommandot använder parametern ThrottleLimit för att öka begränsningsgränsen per kommando till 150. Det här värdet har företräde framför standardbegränsningsgränsen 100 för som anges i sessionskonfigurationen Microsoft.PowerShell.Workflow .
Parametrar
Anger programnamnsegmentet för anslutnings-URI:n.
Standardvärdet är värdet för $PSSessionApplicationName inställningsvariabeln på den lokala datorn. Om den här inställningsvariabeln inte har definierats är standardvärdet WSMAN. Det här värdet är lämpligt för de flesta användningsområden. Mer information finns i about_Preference_Variables.
WinRM-tjänsten använder programnamnet för att välja en lyssnare som ska betjäna anslutningsbegäran. Värdet för den här parametern ska matcha värdet för egenskapen URLPrefix för en lyssnare på fjärrdatorn.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger den mekanism som används för att autentisera användarautentiseringsuppgifterna. De acceptabla värdena för den här parametern är:
DefaultBasicCredsspDigestKerberosNegotiateNegotiateWithImplicitCredential
Standardvärdet är Default.
CredSSP-autentisering är endast tillgängligt i Windows Vista, Windows Server 2008 och senare versioner av Windows-operativsystemet.
Mer information om värdena för den här parametern finns i AuthenticationMechanism Enumeration.
Varning
CredSSP-autentisering (CredSSP), där användarens autentiseringsuppgifter skickas till en fjärrdator som ska autentiseras, är utformad för kommandon som kräver autentisering på mer än en resurs, till exempel åtkomst till en fjärrnätverksresurs. Den här mekanismen ökar säkerhetsrisken för fjärråtgärden. Om fjärrdatorn komprometteras kan de autentiseringsuppgifter som skickas till den användas för att styra nätverkssessionen.
| Type: | AuthenticationMechanism |
| Accepted values: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
| Position: | Named |
| Default value: | Default |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger det digitala offentliga nyckelcertifikatet (X509) för ett användarkonto som har behörighet att utföra den här åtgärden. Ange certifikatets tumavtryck.
Certifikat används i klientcertifikatbaserad autentisering. De kan endast mappas till lokala användarkonton. de fungerar inte med domänkonton.
Om du vill hämta ett certifikattumavtryck använder du cmdleten Get-Item eller cmdleten Get-ChildItem i Windows PowerShell Cert: enheten.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Skapar en beständig anslutning (PSSession) till den angivna datorn. Om du anger flera datornamn skapar Windows PowerShell flera PSSessioner, ett för varje dator. Standard är den lokala datorn.
Ange NetBIOS-namnet, en IP-adress eller ett fullständigt domännamn på en eller flera fjärrdatorer. Om du vill ange den lokala datorn skriver du datornamnet, localhosteller en punkt (.). När datorn finns i en annan domän än användaren krävs det fullständigt kvalificerade domännamnet.
Du kan också skicka ett datornamn inom citattecken till New-PSWorkflowSession.
Om du vill använda en IP-adress i värdet för parametern ComputerName måste kommandot innehålla parametern Credential . Dessutom måste datorn konfigureras för HTTPS-transport, annars måste IP-adressen för fjärrdatorn finnas med i WinRM TrustedHosts-listan på den lokala datorn. Anvisningar för hur du lägger till ett datornamn i listan TrustedHosts finns i "Så här lägger du till en dator i listan över betrodda värdar" i about_Remote_Troubleshooting.
| Type: | String[] |
| Aliases: | Cn |
| Position: | 0 |
| Default value: | Local computer |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standard är den aktuella användaren. Skriv ett användarnamn, till exempel User01, Domain01\User01eller User@Domain.com, eller ange ett PSCredential-objekt , till exempel ett som returneras av cmdleten Get-Credential .
När du skriver ett användarnamn uppmanas du att ange ett lösenord i den här cmdleten.
| Type: | Object |
| Position: | Named |
| Default value: | Current user |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger att den här cmdleten lägger till en interaktiv säkerhetstoken i loopback-sessioner. Med den interaktiva token kan du köra kommandon i loopback-sessionen som hämtar data från andra datorer. Du kan till exempel köra ett kommando i sessionen som kopierar XML-filer från en fjärrdator till den lokala datorn.
En loopback-session är en PSSession som kommer från och slutar på samma dator. Om du vill skapa en loopback-session ska du inte ange parametern ComputerName eller ange dess värde till punkt (.), localhosteller namnet på den lokala datorn.
Som standard skapas loopback-sessioner som har en nätverkstoken, vilket kanske inte ger tillräcklig behörighet för att autentisera till fjärrdatorer.
Parametern EnableNetworkAccess gäller endast i loopback-sessioner. Om du anger parametern EnableNetworkAccess när du skapar en session på en fjärrdator lyckas kommandot, men parametern ignoreras.
Du kan också tillåta fjärråtkomst i en loopback-session med hjälp av CredSSP-värdet för parametern Authentication , som delegerar sessionsautentiseringsuppgifterna till andra datorer.
För att skydda datorn mot skadlig åtkomst kan frånkopplade loopback-sessioner som har interaktiva token, som skapats med hjälp av parametern EnableNetworkAccess , återanslutas endast från den dator där sessionen skapades. Frånkopplade sessioner som använder CredSSP-autentisering kan återanslutas från andra datorer. Mer information finns i cmdleten Disconnect-PSSession .
Den här parametern introducerades i Windows PowerShell 3.0.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger ett eget namn för arbetsflödessessionen. Du kan använda namnet med andra cmdletar, till exempel Get-PSSession och Enter-PSSession. Namnet behöver inte vara unikt för datorn eller den aktuella sessionen.
| Type: | String[] |
| Position: | Named |
| Default value: | Session# |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger nätverksporten på fjärrdatorn som används för den här anslutningen. För att ansluta till en fjärrdator måste fjärrdatorn lyssna på porten som anslutningen använder. Standardportarna är 5985 (WinRM-port för HTTP) och 5986 (WinRM-port för HTTPS).
Innan du använder en annan port måste du konfigurera WinRM-lyssnaren på fjärrdatorn för att lyssna på den porten. Använd följande kommandon för att konfigurera lyssnaren:
winrm delete winrm/config/listener?Address=*+Transport=HTTP
winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}
Använd inte portparametern om du inte måste. Portinställningen i kommandot gäller för alla datorer eller sessioner där kommandot körs. En alternativ portinställning kan förhindra att kommandot körs på alla datorer.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger avancerade alternativ för sessionen. Ange ett SessionOption-objekt , till exempel ett som du skapar med hjälp av cmdleten New-PSSessionOption .
Standardvärdena för alternativen bestäms av värdet för $PSSessionOption inställningsvariabeln, om den har angetts. Annars upprättas standardvärdena av de alternativ som anges i sessionskonfigurationen.
Sessionsalternativvärdena har företräde framför standardvärden för sessioner som anges i inställningsvariabeln $PSSessionOption och i sessionskonfigurationen. De har dock inte företräde framför maximala värden, kvoter eller gränser som angetts i sessionskonfigurationen. För ytterligare information om sessionskonfigurationer, se about_Session_Configurations.
En beskrivning av sessionsalternativen, inklusive standardvärdena, finns i New-PSSessionOption.
Information om inställningsvariabeln $PSSessionOption finns i about_Preference_Variables.
| Type: | PSSessionOption |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger det maximala antalet samtidiga anslutningar som kan upprättas för att köra det här kommandot.
Om du utelämnar den här parametern eller anger värdet 0 (noll) används standardvärdet för sessionskonfigurationen Microsoft.PowerShellWorkflow , 100.
Begränsningsgränsen gäller endast för det aktuella kommandot, inte för sessionen eller datorn.
| Type: | Int32 |
| Position: | Named |
| Default value: | 100 |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger att den här cmdleten använder SSL-protokollet (Secure Sockets Layer) för att upprätta en anslutning till fjärrdatorn. Som standard används inte SSL.
WS-Management krypterar allt Windows PowerShell innehåll som överförs via nätverket. Parametern UseSSL är ett ytterligare skydd som skickar data via en HTTPS-anslutning i stället för en HTTP-anslutning.
Om du anger den här parametern, men SSL inte är tillgängligt på porten som används för kommandot, misslyckas kommandot.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Indata
System.Management.Automation.Runspaces.PSSession[], System.String
Du kan skicka en session eller ett datornamn till den här cmdleten.
Utdata
Kommentarer
Ett New-PSWorkflowSession kommando motsvarar följande kommando:
New-PSSession -ConfigurationName Microsoft.PowerShell.Workflow
Relaterade länkar
Feedback
Skicka och visa feedback för