about_WorkflowCommonParameters

KORT BESKRIVNING

I det här avsnittet beskrivs de parametrar som är giltiga för alla Windows PowerShell-arbetsflödeskommandon. Eftersom Windows PowerShell-motorn lägger till dem i arbetsflöden kan du använda dessa parametrar i alla arbetsflöden och de aktiveras automatiskt i de arbetsflöden som du skapar.

LÅNG BESKRIVNING

Vanliga parametrar för Windows PowerShell-arbetsflödet är en uppsättning cmdlet-parametrar som du kan använda med alla Windows PowerShell-arbetsflöden och aktiviteter. De läggs till av Windows PowerShell-arbetsflödesmotorn, inte av arbetsflödesförfattaren, och de är automatiskt tillgängliga för arbetsflöden och aktiviteter. Arbetsflöden som är kapslade på tre nivåer har dock inte stöd för några vanliga parametrar, inklusive vanliga arbetsflödesparametrar.

Alla arbetsflödesparametrar är valfria och namngivna (inte positionella). De tar inte indata från pipelinen.

De flesta vanliga parametrar för arbetsflödet har ett PS prefix, till exempel PSComputerName och PSCredential. De PS-prefixade parametrarna konfigurerar anslutningen och körningsmiljön för måldatorerna, även kallade "fjärrnoder".

Många av de vanliga parametrarna för arbetsflödet, till exempel PSAllowRedirection och AsJob, har namn som liknar parametrar som används i Windows PowerShell-fjärrkommunikation och bakgrundsjobb. De här parametrarna fungerar på samma sätt som de liknande namngivna fjärrkommunikations- och jobbparametrarna, så att du kan använda den kunskap som du har utvecklat i fjärrkommunikation och jobb för att hantera arbetsflöden.

Arbetsflöden introduceras i Windows PowerShell 3.0.

PARAMETERBESKRIVNINGAR

I det här avsnittet beskrivs vanliga parametrar för arbetsflödet.

-AsJob <SwitchParameter>

Kör arbetsflödet som ett arbetsflödesjobb. Arbetsflödeskommandot returnerar omedelbart ett objekt som representerar ett överordnat jobb. Det överordnade jobbet innehåller de underordnade jobb som körs på var och en av måldatorerna. Om du vill hantera jobbet använder du cmdletarna Jobb. Om du vill få jobbresultatet använder du Receive-Job.

-JobName-sträng <>

Anger ett eget namn för arbetsflödesjobbet. Som standard heter Job<n>jobben , där <n> är ett ordningstal.

Om du använder parametern JobName i ett arbetsflödeskommando körs arbetsflödet som ett jobb och arbetsflödeskommandot returnerar ett jobbobjekt, även om du inte inkluderar asjob-parametern i kommandot.

Mer information om Windows PowerShell-bakgrundsjobb finns i about_Jobs.

-PSAllowRedirection <SwitchParameter>

Tillåter omdirigering av anslutningen till måldatorerna.

När du använder parametern PS Anslut ionURI kan fjärrmålet returnera en instruktion för att omdirigera till en annan URI. Som standard omdirigerar Inte Windows PowerShell anslutningar, men du kan använda parametern PSAllowRedirection för att tillåta omdirigering av anslutningen till måldatorn.

Du kan också begränsa antalet gånger som anslutningen omdirigeras genom att ange egenskapen $PSSessionOption Maximum Anslut ionRedirectionCount för inställningsvariabeln eller egenskapen Maximum Anslut ionRedirectionCount för värdet för parametern PSSessionOption. Standardvärdet är 5. Mer information finns i beskrivningen av parametern PSSessionOption och New-PSSessionOption.

-PSApplicationName-sträng <>

Anger programnamnssegmentet för anslutnings-URI:n som används för att ansluta till måldatorerna. Använd den här parametern för att ange programnamnet när du inte använder parametern Anslut ionURI i kommandot .

Standardvärdet är värdet för $PSSessionApplicationName inställningsvariabeln på den lokala datorn. Om den här inställningsvariabeln inte har definierats är WSMANstandardvärdet . 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.

-PSAuthentication <AuthenticationMechanism>

Anger den mekanism som används för att autentisera användarens autentiseringsuppgifter vid anslutning till måldatorerna.

Giltiga värden är:

  • Default
  • Basic
  • Credssp
  • Digest
  • Kerberos
  • Negotiate
  • NegotiateWithImplicitCredential

Standardvärdet är Default.

Information om värdena för den här parametern finns i beskrivningen av System.Management.Automation.Runspaces.AuthenticationMechanism-uppräkning i PowerShell SDK.

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.

-PSAuthenticationLevel <AuthenticationLevel>

Anger autentiseringsnivån för anslutningarna till måldatorerna. Standardvärdet är Default.

Giltiga värden är:

Name beskrivning
Unchanged Autentiseringsnivån är densamma som föregående kommando.
Default Windows-autentisering.
None Ingen COM-autentisering.
Connect Anslut COM-autentisering på nivå.
Call COM-autentisering på anropsnivå.
Packet COM-autentisering på paketnivå.
PacketIntegrity Com-autentisering på paketintegritetsnivå.
PacketPrivacy Com-autentisering på paketsekretessnivå.

-PSCertificateThumbprint <String>

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 bara mappas till lokala användarkonton. de fungerar inte med domänkonton.

Om du vill hämta ett certifikat använder du cmdletarna Get-Item eller Get-ChildItem på Windows PowerShell-enheten Cert: .

-PSComputerName <String[]>

Anger listan över datorer som är målnoderna i arbetsflödet. Kommandon eller aktiviteter i ett arbetsflöde körs på de datorer som anges med hjälp av den här parametern. Standard är den lokala datorn.

Ange NETBIOS-namn, IP-adress eller fullständigt domännamn för en eller flera datorer i en kommaavgränsad lista. Om du vill ange den lokala datorn skriver du datornamnet, localhosteller en punkt (.).

Om du vill inkludera den lokala datorn i värdet för parametern PSComputerName öppnar du Windows PowerShell med alternativet Kör som administratör .

Om den här parametern utelämnas från kommandot, eller om värdet är $null eller en tom sträng, är arbetsflödesmålet den lokala datorn och Windows PowerShell-fjärrkommunikation används inte för att köra kommandot.

Om du vill använda en IP-adress i värdet för parametern ComputerName måste kommandot innehålla parametern PSCredential . Dessutom måste datorn konfigureras för HTTPS-transport, annars måste IP-adressen för fjärrdatorn ingå 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.

-PSConfigurationName <String>

Anger de sessionskonfigurationer som används för att konfigurera sessioner på måldatorerna. Ange en sessionskonfiguration på måldatorerna (inte arbetsflödesserverdatorn). Standardvärdet är Microsoft.PowerShell.Workflow.

-PS Anslut ionRetryCount <UInt>

Anger det maximala antalet försök att ansluta till varje måldator om det första anslutningsförsöket misslyckas. Ange ett tal mellan 1 och 4 294 967 295 (UInt.MaxValue). Standardvärdet noll (0) representerar inga återförsök.

-PS Anslut ionRetryIntervalSec <UInt>

Anger fördröjningen mellan återförsök av anslutningen i sekunder. Standardvärdet är noll (0). Den här parametern är endast giltig när värdet för PS Anslut ionRetryCount är minst 1.

-PS Anslut ionURI <System.Uri>

Anger en URI (Uniform Resource Identifier) som definierar anslutningsslutpunkten för arbetsflödet på måldatorn. URI:n måste vara fullständigt kvalificerad.

Formatet för den här strängen är följande:

<Transport>://<ComputerName>:<Port>/<ApplicationName>

Standardvärdet är http://localhost:5985/WSMAN.

Om du inte anger någon PS Anslut ionURI kan du använda parametrarna PSUseSSL, PSComputerName, PSPort och PSApplicationName för att ange PS Anslut ionURI-värdena.

Giltiga värden för transportsegmentet för URI:n är HTTP och HTTPS. Om du anger en anslutnings-URI med ett transportsegment, men inte anger någon port, skapas sessionen med standardportar: 80 för HTTP och 443 för HTTPS. Om du vill använda standardportarna för Windows PowerShell-fjärrkommunikation anger du port 5985 för HTTP eller 5986 HTTPS.

-PSCredential <PSCredential>

Anger ett användarkonto som har behörighet att köra ett arbetsflöde på måldatorn. Standard är den aktuella användaren. Den här parametern är endast giltig när parametern PSComputerName ingår i kommandot .

Skriv ett användarnamn, till exempel User01 eller Domain01\User01, eller ange en variabel som innehåller ett PSCredential-objekt , till exempel ett som cmdleten Get-Credential returnerar. Om du bara anger ett användarnamn uppmanas du att ange ett lösenord.

-PSElapsedTimeoutSec <UInt32>

Avgör hur länge arbetsflödet och alla relaterade resurser underhålls i systemet. När tidsgränsen upphör att gälla tas arbetsflödet bort, även om det fortfarande bearbetas. Ange ett värde mellan 10 och 4 294 967 295. Standardvärdet ( 0 noll) innebär att det inte finns någon överskriden tidsgräns.

-PSParameterCollection <Hashtable[]>

Anger olika vanliga parametervärden för arbetsflödet för olika måldatorer.

Ange en kommaavgränsad lista över hash-tabeller med en hash-tabell för varje måldator. I varje hash-tabell är den första nyckeln PSComputerName och dess värde är namnet på måldatorn. Jokertecken tillåts i datornamnet. För de återstående nycklarna i hash-tabellen är nyckeln parameternamnet och värdet är parametervärdet.

Till exempel:

-PSParameterCollection @{PSComputerName="*"; PSElapsedTimeoutSec=20},
@{PSComputerName="Server02"},
@{PSComputerName="Server03"},
@{PSComputerName="Server01"; PSElapsedTimeoutSec=10}

I exemplet ovan har alla anslutningar en PSElapsedTimeoutSec-standard 20 sekunder, förutom Server01 som åsidosätter standardvärdet genom att ange sin egen timeout på 10 sekunder.

-PSPersist <Booleskt>

Lägger till kontrollpunkter i arbetsflödet, förutom eventuella kontrollpunkter som anges i arbetsflödet.

Den här parametern kan inte utelämna kontrollpunkterna i ett arbetsflöde, till exempel de som anges med hjälp av den vanliga parametern PSPersist-aktivitet , Checkpoint-Workflow aktiviteten eller variabeln $PSPersistPreference .

En "kontrollpunkt" eller "beständighetspunkt" är en ögonblicksbild av arbetsflödestillståndet och data som samlas in när arbetsflödet körs och sparas i ett beständigt lager på disken eller i en SQL-databas. Windows PowerShell-arbetsflödet använder sparade data för att återuppta ett pausat eller avbrutet arbetsflöde från den senaste beständighetspunkten i stället för att starta om arbetsflödet.

Giltiga värden:

  • (Standard) Om du utelämnar den här parametern läggs en kontrollpunkt till i början och slutet av arbetsflödet, förutom alla kontrollpunkter som anges i arbetsflödet.

  • $True. Lägger till en kontrollpunkt i början och slutet av arbetsflödet och en kontrollpunkt efter varje aktivitet, utöver eventuella kontrollpunkter som anges i arbetsflödet.

  • $False. Inga kontrollpunkter läggs till. Kontrollpunkter tas endast när de anges i arbetsflödet.

-PSPort <Int32>

Anger nätverksporten på måldatorerna. Standardportarna är 5985 (WinRM-porten för HTTP) och 5986 (WinRM-porten för HTTPS).

Använd inte PSPort-parametern om du inte måste. Porten som anges 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. Innan du använder en alternativ port måste du konfigurera WinRM-lyssnaren på fjärrdatorn så att den lyssnar på den porten.

-PSPrivateMetadata <Hashtable>

Tillhandahåller anpassad information för arbetsflödesjobb. Ange en hash-tabell. Nycklarna och värdena anpassas för varje arbetsflöde. Information om privata metadata för ett arbetsflöde finns i hjälpavsnittet för arbetsflödet.

Den här parametern bearbetas inte av Windows PowerShell-arbetsflödesmotorn. I stället skickar motorn hash-tabellen direkt till arbetsflödet.

-PSRunningTimeoutSec <UInt32>

Anger körningstiden för arbetsflödet i sekunder, exklusive varje tid som arbetsflödet pausas. Om arbetsflödeskörningen inte är klar när tiden går ut stoppar Windows PowerShell-arbetsflödesmotorn med två skäl körningen av arbetsflödet.

-PSSessionOption <PSSessionOption>

Anger avancerade alternativ för sessioner till måldatorerna. Ange ett PSSessionOption-objekt , till exempel ett objekt som du skapar med hjälp av cmdleten New-PSSessionOption .

Standardvärdena för sessionsalternativen bestäms av värdet för $PSSessionOption inställningsvariabeln, om den har angetts. Annars använder sessionen de värden som anges i sessionskonfigurationen.

En beskrivning av sessionsalternativen, inklusive standardvärdena, finns i New-PSSessionOption. Information om inställningsvariabeln finns i $PSSessionOption about_Preference_Variables.

-PSUseSSL <SwitchParameter>

Använder SSL-protokollet (Secure Sockets Layer) för att upprätta en anslutning till måldatorn. Som standard används inte SSL.

WS-Management krypterar allt Windows PowerShell-innehåll som överförs via nätverket. UseSSL är ett ytterligare skydd som skickar data över en HTTPS i stället för HTTP. Om du använder den här parametern, men SSL inte är tillgängligt på porten som används för kommandot, misslyckas kommandot.

Se även