about_WorkflowCommonParameters
KRÓTKI OPIS
W tym temacie opisano parametry prawidłowe we wszystkich poleceniach przepływu pracy programu Windows PowerShell. Ponieważ aparat programu Windows PowerShell dodaje je do przepływów pracy, możesz użyć tych parametrów w dowolnym przepływie pracy i są one automatycznie włączone w przepływach pracy, które tworzysz.
DŁUGI OPIS
Typowe parametry przepływu pracy programu Windows PowerShell to zestaw parametrów poleceń cmdlet, których można używać ze wszystkimi przepływami pracy i działaniami programu Windows PowerShell. Są one dodawane przez aparat przepływu pracy programu Windows PowerShell, a nie przez autora przepływu pracy, i są one automatycznie dostępne w przepływach pracy i działaniach. Jednak przepływy pracy, które są zagnieżdżone trzy poziomy głębokie, nie obsługują żadnych typowych parametrów, w tym wspólnych parametrów przepływu pracy.
Wszystkie parametry przepływu pracy są opcjonalne i nazwane (nie pozycyjne). Nie pobierają danych wejściowych z potoku.
Większość typowych parametrów przepływu pracy ma PS
prefiks, taki jak PSComputerName i PSCredential. Parametry z prefiksem PS konfigurują połączenie i środowisko wykonywania dla komputerów docelowych, nazywanych również "węzłami zdalnymi".
Wiele typowych parametrów przepływu pracy, takich jak PSAllowRedirection i AsJob, ma nazwy podobne do parametrów używanych w zadaniach komunikacji zdalnej i zadań w tle programu Windows PowerShell. Te parametry działają w taki sam sposób, jak podobnie nazwane parametry komunikacji i zadania, dzięki czemu można użyć wiedzy opracowanej w ramach komunikacji zdalnie i zadań do zarządzania przepływami pracy.
Przepływy pracy są wprowadzane w programie Windows PowerShell 3.0.
OPISY PARAMETRÓW
W tej sekcji opisano typowe parametry przepływu pracy.
-AsJob <SwitchParameter>
Uruchamia przepływ pracy jako zadanie przepływu pracy. Polecenie przepływu pracy natychmiast zwraca obiekt reprezentujący zadanie nadrzędne. Zadanie nadrzędne zawiera zadania podrzędne, które są uruchomione na każdym z komputerów docelowych. Aby zarządzać zadaniem, użyj poleceń cmdlet zadania. Aby uzyskać wyniki zadania, użyj polecenia Receive-Job.
-JobName <Ciąg>
Określa przyjazną nazwę zadania przepływu pracy. Domyślnie zadania mają nazwę Job<n>
, gdzie <n>
jest liczbą porządkową.
Jeśli używasz parametru JobName w poleceniu przepływu pracy, przepływ pracy jest uruchamiany jako zadanie, a polecenie przepływu pracy zwraca obiekt zadania, nawet jeśli parametr AsJob nie zostanie uwzględniony w poleceniu.
Aby uzyskać więcej informacji na temat zadań w tle programu Windows PowerShell, zobacz about_Jobs.
-PSAllowRedirection <SwitchParameter>
Umożliwia przekierowanie połączenia z komputerami docelowymi.
Jeśli używasz parametru PSConnectionURI , zdalne miejsce docelowe może zwrócić instrukcję, aby przekierować do innego identyfikatora URI. Domyślnie program Windows PowerShell nie przekierowuje połączeń, ale można użyć parametru PSAllowRedirection , aby zezwolić na przekierowywanie połączenia z komputerem docelowym.
Można również ograniczyć liczbę przekierowań połączenia, ustawiając właściwość $PSSessionOption
MaximumConnectionRedirectionCount zmiennej preferencji lub właściwość MaximumConnectionRedirectionCount wartości parametru PSSessionOption. Domyślna wartość to 5
. Aby uzyskać więcej informacji, zobacz opis parametru PSSessionOption i New-PSSessionOption.
-PSApplicationName <ciąg>
Określa segment nazwy aplikacji identyfikatora URI połączenia, który jest używany do łączenia się z komputerami docelowymi. Użyj tego parametru, aby określić nazwę aplikacji, jeśli nie używasz parametru ConnectionURI w poleceniu .
Wartość domyślna to wartość zmiennej $PSSessionApplicationName
preferencji na komputerze lokalnym. Jeśli ta zmienna preferencji nie jest zdefiniowana, wartość domyślna to WSMAN
. Ta wartość jest odpowiednia dla większości zastosowań. Aby uzyskać więcej informacji, zobacz about_Preference_Variables.
Usługa WinRM używa nazwy aplikacji, aby wybrać odbiornik do obsługi żądania połączenia. Wartość tego parametru powinna być zgodna z wartością właściwości URLPrefix odbiornika na komputerze zdalnym.
-PSAuthentication <AuthenticationMechanism>
Określa mechanizm używany do uwierzytelniania poświadczeń użytkownika podczas nawiązywania połączenia z komputerami docelowymi.
Prawidłowe wartości to:
Default
Basic
Credssp
Digest
Kerberos
Negotiate
NegotiateWithImplicitCredential
Domyślna wartość to Default
.
Aby uzyskać informacje o wartościach tego parametru, zobacz opis wyliczenia System.Management.Automation.Runspaces.AuthenticationMechanism w zestawie SDK programu PowerShell.
Ostrzeżenie
Uwierzytelnianie dostawcy usług zabezpieczeń poświadczeń (CredSSP), w którym poświadczenia użytkownika są przekazywane do komputera zdalnego do uwierzytelnienia, jest przeznaczone dla poleceń wymagających uwierzytelniania w więcej niż jednym zasobie, takich jak uzyskiwanie dostępu do zdalnego udziału sieciowego. Ten mechanizm zwiększa ryzyko bezpieczeństwa operacji zdalnej. W przypadku naruszenia zabezpieczeń komputera zdalnego poświadczenia przekazywane do niego mogą służyć do kontrolowania sesji sieciowej.
-PSAuthenticationLevel AuthenticationLevel <>
Określa poziom uwierzytelniania dla połączeń z komputerami docelowymi.
Domyślna wartość to Default
.
Prawidłowe wartości to:
Nazwa/nazwisko | opis |
---|---|
Unchanged |
Poziom uwierzytelniania jest taki sam jak poprzednie polecenie. |
Default |
Uwierzytelnianie systemu Windows. |
None |
Brak uwierzytelniania COM. |
Connect |
Uwierzytelnianie COM na poziomie połączenia. |
Call |
Uwierzytelnianie COM na poziomie wywołań. |
Packet |
Uwierzytelnianie COM na poziomie pakietów. |
PacketIntegrity |
Uwierzytelnianie COM na poziomie integralności pakietów. |
PacketPrivacy |
Uwierzytelnianie COM na poziomie prywatności pakietów. |
-PSCertificateThumbprint <String>
Określa cyfrowy certyfikat klucza publicznego (X509) konta użytkownika, które ma uprawnienia do wykonania tej akcji. Wprowadź odcisk palca certyfikatu.
Certyfikaty są używane w uwierzytelnianiu opartym na certyfikatach klienta. Można je mapować tylko na lokalne konta użytkowników; nie działają z kontami domeny.
Aby uzyskać certyfikat, użyj poleceń cmdlet Get-Item lub Get-ChildItem na dysku programu Windows PowerShell Cert:
.
-PSComputerName <String[]>
Określa listę komputerów, które są węzłami docelowymi przepływu pracy. Polecenia lub działania w przepływie pracy są uruchamiane na komputerach określonych przy użyciu tego parametru. Wartość domyślna to komputer lokalny.
Wpisz nazwę NETBIOS, adres IP lub w pełni kwalifikowaną nazwę domeny jednego lub kilku komputerów na liście rozdzielanej przecinkami. Aby określić komputer lokalny, wpisz nazwę komputera, localhost
lub kropkę (.
).
Aby uwzględnić komputer lokalny w wartości parametru PSComputerName, otwórz program Windows PowerShell z opcją Uruchom jako administrator.
Jeśli ten parametr zostanie pominięty z polecenia lub jest $null
to wartość lub pusty ciąg, element docelowy przepływu pracy to komputer lokalny, a komunikacja zdalna programu Windows PowerShell nie jest używana do uruchamiania polecenia.
Aby użyć adresu IP w wartości parametru ComputerName , polecenie musi zawierać parametr PSCredential . Ponadto należy skonfigurować komputer pod kątem transportu HTTPS lub adres IP komputera zdalnego musi znajdować się na liście Zaufanych Hostów usługi WinRM na komputerze lokalnym. Aby uzyskać instrukcje dotyczące dodawania nazwy komputera do listy TrustedHosts, zobacz "How to Add a Computer to the Trusted Host List" (Jak dodać komputer do listy zaufanych hostów) w about_Remote_Troubleshooting.
-PSConfigurationName <Ciąg>
Określa konfiguracje sesji używane do konfigurowania sesji na komputerach docelowych. Wprowadź konfigurację sesji na komputerach docelowych (a nie na komputerze serwera przepływu pracy). Wartość domyślna to Microsoft.PowerShell.Workflow.
-PSConnectionRetryCount <UInt>
Określa maksymalną liczbę prób nawiązania połączenia z każdym komputerem docelowym, jeśli pierwsza próba połączenia zakończy się niepowodzeniem. Wprowadź liczbę z zakresu od 1 do 4294 967 295 (UInt.MaxValue). Wartość domyślna, zero (0
), reprezentuje brak ponownych prób.
-PSConnectionRetryIntervalSec <UInt>
Określa opóźnienie między próbami ponawiania próby połączenia w sekundach. Wartość domyślna to zero (0
). Ten parametr jest prawidłowy tylko wtedy, gdy wartość PSConnectionRetryCount wynosi co najmniej 1
.
-PSConnectionURI <System.Uri>
Określa identyfikator URI (Uniform Resource Identifier), który definiuje punkt końcowy połączenia dla przepływu pracy na komputerze docelowym. Identyfikator URI musi być w pełni kwalifikowany.
Format tego ciągu jest następujący:
<Transport>://<ComputerName>:<Port>/<ApplicationName>
Domyślna wartość to http://localhost:5985/WSMAN
.
Jeśli nie określisz identyfikatora PSConnectionURI, możesz użyć parametrów PSUseSSL, PSComputerName, PSPort i PSApplicationName, aby określić wartości PSConnectionURI.
Prawidłowe wartości segmentu Transport identyfikatora URI to HTTP i HTTPS. Jeśli określisz identyfikator URI połączenia z segmentem Transport, ale nie określisz portu, sesja zostanie utworzona z portami standardów: 80
dla protokołu HTTP i 443
HTTPS. Aby użyć domyślnych portów komunikacji zdalnej programu Windows PowerShell, określ port 5985
protokołu HTTP lub 5986
HTTPS.
-PSCredential PSCredential <>
Określa konto użytkownika, które ma uprawnienia do uruchamiania przepływu pracy na komputerze docelowym. Wartość domyślna to użytkownik bieżący. Ten parametr jest prawidłowy tylko wtedy, gdy parametr PSComputerName jest uwzględniony w poleceniu .
Wpisz nazwę użytkownika, taką jak User01
lub Domain01\User01
, lub wprowadź zmienną zawierającą obiekt PSCredential , taki jak zwracane przez Get-Credential
polecenie cmdlet. Jeśli wprowadzisz tylko nazwę użytkownika, zostanie wyświetlony monit o podanie hasła.
-PSElapsedTimeoutSec <UInt32>
Określa, jak długo przepływ pracy i wszystkie powiązane zasoby są przechowywane w systemie. Po wygaśnięciu limitu czasu przepływ pracy zostanie usunięty, nawet jeśli nadal jest przetwarzany. Wprowadź wartość z zakresu od 10 do 4 294 967 295. Wartość 0
domyślna (zero) oznacza, że nie upłynął limit czasu.
-PSParameterCollection <Hashtable[]>
Określa różne typowe wartości parametrów przepływu pracy dla różnych komputerów docelowych.
Wprowadź rozdzielaną przecinkami listę tabel skrótów z jedną tabelą skrótów dla każdego komputera docelowego. W każdej tabeli skrótów pierwszy klucz to PSComputerName , a jego wartość to nazwa komputera docelowego. Symbole wieloznaczne są dozwolone w nazwie komputera. W przypadku pozostałych kluczy w tabeli skrótów klucz jest nazwą parametru, a wartość jest wartością parametru.
Na przykład:
-PSParameterCollection @{PSComputerName="*"; PSElapsedTimeoutSec=20},
@{PSComputerName="Server02"},
@{PSComputerName="Server03"},
@{PSComputerName="Server01"; PSElapsedTimeoutSec=10}
W powyższym przykładzie wszystkie połączenia będą miały domyślną wartość PSElapsedTimeoutSec sekund 20
, z wyjątkiem server01, która zastępuje wartość domyślną, określając własny limit 10
czasu sekund.
-PSPersist <Wartość logiczna>
Dodaje punkty kontrolne do przepływu pracy oprócz punktów kontrolnych określonych w przepływie pracy.
Ten parametr nie może pominąć punktów kontrolnych w przepływie pracy, takich jak określone przy użyciu typowego parametru działania PSPersist , Checkpoint-Workflow
działania lub zmiennej $PSPersistPreference
.
"Punkt kontrolny" lub "punkt trwałości" to migawka stanu przepływu pracy i danych przechwyconych podczas uruchamiania przepływu pracy i jest zapisywana w magazynie trwałości na dysku lub w bazie danych SQL. Przepływ pracy programu Windows PowerShell używa zapisanych danych do wznowienia zawieszonego lub przerwanego przepływu pracy z ostatniego punktu trwałości, a nie do ponownego uruchomienia przepływu pracy.
Prawidłowe wartości:
(Ustawienie domyślne) Jeśli ten parametr zostanie pominięty, punkt kontrolny zostanie dodany do początku i końca przepływu pracy, oprócz punktów kontrolnych określonych w przepływie pracy.
$True
. Dodaje punkt kontrolny do początku i końca przepływu pracy oraz punkt kontrolny po każdym działaniu, oprócz punktów kontrolnych określonych w przepływie pracy.$False
. Nie są dodawane żadne punkty kontrolne. Punkty kontrolne są wykonywane tylko wtedy, gdy są określone w przepływie pracy.
-PSPort <Int32>
Określa port sieciowy na komputerach docelowych. Domyślne porty to 5985
(port Usługi WinRM dla protokołu HTTP) i 5986
(port Usługi WinRM dla protokołu HTTPS).
Nie używaj parametru PSPort , chyba że musisz. Port ustawiony w poleceniu ma zastosowanie do wszystkich komputerów lub sesji, na których jest uruchamiane polecenie. Ustawienie alternatywnego portu może uniemożliwić uruchomienie polecenia na wszystkich komputerach. Przed użyciem portu alternatywnego należy skonfigurować odbiornik WinRM na komputerze zdalnym do nasłuchiwania na tym porcie.
-PSPrivateMetadata <Hashtable>
Udostępnia dostosowane informacje do zadań przepływu pracy. Wprowadź tabelę skrótów. Klucze i wartości są dostosowywane dla każdego przepływu pracy. Aby uzyskać informacje o prywatnych metadanych przepływu pracy, zobacz temat pomocy dla przepływu pracy.
Ten parametr nie jest przetwarzany przez aparat przepływu pracy programu Windows PowerShell. Zamiast tego aparat przekazuje tabelę skrótów bezpośrednio do przepływu pracy.
-PSRunningTimeoutSec <UInt32>
Określa czas działania przepływu pracy w sekundach, z wyłączeniem czasu wstrzymania przepływu pracy. Jeśli wykonanie przepływu pracy nie zostanie ukończone po wygaśnięciu czasu, aparat przepływu pracy programu Windows PowerShell wymusza wykonywanie przepływu pracy.
-PSSessionOption <PSSessionOption>
Ustawia zaawansowane opcje sesji na komputery docelowe. Wprowadź obiekt PSSessionOption, taki jak obiekt utworzony za pomocą New-PSSessionOption
polecenia cmdlet .
Wartości domyślne opcji sesji są określane przez wartość zmiennej $PSSessionOption
preferencji, jeśli jest ustawiona. W przeciwnym razie sesja używa wartości określonych w konfiguracji sesji.
Opis opcji sesji, w tym wartości domyślnych, można znaleźć w temacie New-PSSessionOption.
Aby uzyskać informacje o zmiennej $PSSessionOption
preferencji, zobacz about_Preference_Variables.
-PSUseSSL <SwitchParameter>
Używa protokołu Secure Sockets Layer (SSL), aby nawiązać połączenie z komputerem docelowym. Domyślnie nie jest używane szyfrowanie SSL.
Usługa WS-Management szyfruje całą zawartość programu Windows PowerShell przesyłaną przez sieć. UseSSL to dodatkowa ochrona, która wysyła dane za pośrednictwem protokołu HTTPS zamiast protokołu HTTP. Jeśli używasz tego parametru, ale protokół SSL nie jest dostępny na porcie używanym dla polecenia, polecenie zakończy się niepowodzeniem.