Invoke-WSManAction
Wywołuje akcję dla obiektu określonego przez identyfikator URI zasobu i selektorów.
Składnia
Invoke-WSManAction
[-Action] <String>
[-ConnectionURI <Uri>]
[-FilePath <String>]
[-OptionSet <Hashtable>]
[[-SelectorSet] <Hashtable>]
[-SessionOption <SessionOption>]
[-ValueSet <Hashtable>]
[-ResourceURI] <Uri>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Invoke-WSManAction
[-Action] <String>
[-ApplicationName <String>]
[-ComputerName <String>]
[-FilePath <String>]
[-OptionSet <Hashtable>]
[-Port <Int32>]
[[-SelectorSet] <Hashtable>]
[-SessionOption <SessionOption>]
[-UseSSL]
[-ValueSet <Hashtable>]
[-ResourceURI] <Uri>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Opis
Polecenie Invoke-WSManAction
uruchamia akcję dla obiektu określonego przez RESOURCE_URI, gdzie parametry są określane przez pary wartości klucza.
To polecenie cmdlet używa warstwy połączenia/transportu programu WSMan do uruchomienia akcji.
Przykłady
Przykład 1: Wywoływanie metody
Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -Authentication default
xsi : http://www.w3.org/2001/XMLSchema-instance
p : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim : http://schemas.dmtf.org/wbem/wscim/1/common
lang : en-US
ReturnValue : 0
To polecenie wywołuje metodę StartService wystąpienia klasy Win32_Service WMI, które odpowiada usłudze buforu.
Wartość zwracana wskazuje, czy akcja zakończyła się pomyślnie. W takim przypadku zwracana wartość 0 wskazuje powodzenie. Wartość zwracana 5 wskazuje, że usługa jest już uruchomiona.
Przykład 2. Wywoływanie metody
Invoke-WSManAction -Action stopservice -ResourceURI wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:input.xml -Authentication default
xsi : http://www.w3.org/2001/XMLSchema-instance
p : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim : http://schemas.dmtf.org/wbem/wscim/1/common
lang : en-US
ReturnValue : 0
To polecenie wywołuje metodę StopService w usłudze buforowania przy użyciu danych wejściowych z pliku.
Plik Input.xml
, zawiera następującą zawartość:
<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />
Wartość zwracana wskazuje, czy akcja zakończyła się pomyślnie. W takim przypadku zwracana wartość 0 wskazuje powodzenie. Wartość zwracana 5 wskazuje, że usługa jest już uruchomiona.
Przykład 3. Wywoływanie metody z określonymi wartościami parametrów
Invoke-WSManAction -Action create -ResourceURI wmicimv2/win32_process -ValueSet @{commandline="notepad.exe";currentdirectory="C:\"}
xsi : http://www.w3.org/2001/XMLSchema-instance
p : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process
cim : http://schemas.dmtf.org/wbem/wscim/1/common
lang : en-US
ProcessId : 6356
ReturnValue : 0
To polecenie wywołuje metodę Create klasy Win32_Process. Przekazuje metodę dwie wartości Notepad.exe
parametrów i C:\
. W związku z tym tworzony jest nowy proces do uruchamiania Notatnika, a bieżący katalog nowego procesu ma wartość C:\
.
Przykład 4: Wywoływanie metody na komputerze zdalnym
Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication default
xsi : http://www.w3.org/2001/XMLSchema-instance
p : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim : http://schemas.dmtf.org/wbem/wscim/1/common
lang : en-US
ReturnValue : 0
To polecenie wywołuje metodę StartService wystąpienia klasy Win32_Service WMI, które odpowiada usłudze buforu. Ponieważ określono parametr ComputerName, polecenie jest uruchamiane na komputerze zdalnym server01.
Wartość zwracana wskazuje, czy akcja zakończyła się pomyślnie. W takim przypadku zwracana wartość 0 wskazuje powodzenie. Wartość zwracana 5 wskazuje, że usługa jest już uruchomiona.
Parametry
-Action
Określa metodę do uruchomienia w obiekcie zarządzania określonym przez identyfikator ResourceURI i selektory.
Typ: | String |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ApplicationName
Określa nazwę aplikacji w połączeniu. Wartość domyślna parametru ApplicationName to WSMAN. Pełny identyfikator zdalnego punktu końcowego ma następujący format:
<Transport>://<Server>:<Port>/<ApplicationName>
Na przykład:
http://server01:8080/WSMAN
Internet Information Services (IIS), który hostuje sesję, przekazuje żądania z tym punktem końcowym do określonej aplikacji. To ustawienie domyślne "WSMAN" jest odpowiednie dla większości zastosowań. Ten parametr jest przeznaczony do użycia, gdy wiele komputerów nawiązuje połączenia zdalne z jednym komputerem z uruchomionym programem Windows PowerShell. W takim przypadku usługi IIS hostuje usługi sieci Web do zarządzania (WS-Management) pod kątem wydajności.
Typ: | String |
Position: | Named |
Domyślna wartość: | Wsman |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Authentication
Określa mechanizm uwierzytelniania, który ma być używany na serwerze. Dopuszczalne wartości:
Basic
- Podstawowa to schemat, w którym nazwa użytkownika i hasło są wysyłane w postaci zwykłego tekstu do serwera lub serwera proxy.Default
— Użyj metody uwierzytelniania zaimplementowanej przez protokół WS-Management. Jest to opcja domyślna.Digest
— Skrót to schemat odpowiedzi wyzwania, który używa ciągu danych określonego przez serwer do wyzwania.Kerberos
— Komputer kliencki i serwer wzajemnie się uwierzytelniają przy użyciu certyfikatów Protokołu Kerberos.Negotiate
- Negocjacja to schemat odpowiedzi na żądanie, który negocjuje z serwerem lub serwerem proxy w celu określenia schematu do użycia do uwierzytelniania. Na przykład ta wartość parametru pozwala negocjacjom określić, czy jest używany protokół Kerberos, czy NTLM.CredSSP
— Użyj uwierzytelniania dostawcy obsługi zabezpieczeń poświadczeń (CredSSP), które umożliwia użytkownikowi delegowanie poświadczeń. Ta opcja jest przeznaczona dla poleceń uruchamianych na jednym komputerze zdalnym, ale zbierać dane z lub uruchamiać dodatkowe polecenia na innych komputerach zdalnych.
Uwaga
Dostawca CredSSP deleguje poświadczenia użytkownika z komputera lokalnego do komputera zdalnego. Ta praktyka zwiększa ryzyko bezpieczeństwa operacji zdalnej. W przypadku naruszenia zabezpieczeń komputera zdalnego po przekazaniu do niego poświadczeń można użyć poświadczeń do kontrolowania sesji sieciowej.
Typ: | AuthenticationMechanism |
Aliasy: | auth, am |
Dopuszczalne wartości: | None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-CertificateThumbprint
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. Mogą być mapowane tylko na konta użytkowników lokalnych; nie działają z kontami domeny.
Aby uzyskać odcisk palca certyfikatu, użyj Get-Item
polecenia lub Get-ChildItem
na dysku Certyfikat programu Windows PowerShell.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ComputerName
Określa komputer, dla którego chcesz uruchomić operację zarządzania. Wartość może być w pełni kwalifikowaną nazwą domeny, nazwą NetBIOS lub adresem IP. Użyj nazwy komputera lokalnego, użyj hosta lokalnego lub użyj kropki (.
), aby określić komputer lokalny. Komputer lokalny jest domyślny. Jeśli komputer zdalny znajduje się w innej domenie niż użytkownik, należy użyć w pełni kwalifikowanej nazwy domeny. Do polecenia cmdlet można przekazać wartość tego parametru.
Typ: | String |
Aliasy: | cn |
Position: | Named |
Domyślna wartość: | Localhost |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ConnectionURI
Określa punkt końcowy połączenia. Format tego ciągu to:
<Transport>://<Server>:<Port>/<ApplicationName>
Następujący ciąg jest poprawnie sformatowaną wartością dla tego parametru:
http://Server01:8080/WSMAN
Identyfikator URI musi być w pełni kwalifikowany.
Typ: | Uri |
Aliasy: | CURI, CU |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Credential
Określa konto użytkownika, które ma uprawnienia do wykonania tej akcji. Wartość domyślna to użytkownik bieżący. Wpisz nazwę użytkownika, taką jak "User01", "Domain01\User01" lub User@Domain.com. Możesz też wprowadzić obiekt PSCredential, taki jak obiekt zwrócony przez Get-Credential
polecenie cmdlet. Podczas wpisywania nazwy użytkownika zostanie wyświetlony monit o podanie hasła.
Typ: | PSCredential |
Aliasy: | cred, c |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-FilePath
Określa ścieżkę pliku używanego do aktualizowania zasobu zarządzania. Zasób zarządzania określa się przy użyciu parametru ResourceURI i parametru SelectorSet. Na przykład następujące polecenie używa parametru FilePath:
Invoke-WSManAction -Action stopservice -ResourceUri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath c:\input.xml -Authentication default
To polecenie wywołuje metodę StopService w usłudze buforowania przy użyciu danych wejściowych z pliku. Plik Input.xml
, zawiera następującą zawartość:
<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-OptionSet
Przekazuje zestaw przełączników do usługi w celu zmodyfikowania lub uściślinia charakteru żądania. Są one podobne do przełączników używanych w powłokach wiersza polecenia, ponieważ są one specyficzne dla usługi. Można określić dowolną liczbę opcji.
W poniższym przykładzie pokazano składnię przekazującą wartości 1, 2 i 3 dla parametrów a, b i c:
-OptionSet @{a=1;b=2;c=3}
Typ: | Hashtable |
Aliasy: | os |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Port
Określa port, który ma być używany, gdy klient nawiązuje połączenie z usługą WinRM. Gdy transport to HTTP, domyślny port to 80. Gdy transport to HTTPS, domyślny port to 443. W przypadku używania protokołu HTTPS jako transportu wartość parametru ComputerName musi być zgodna z nazwą pospolitą certyfikatu serwera (CN). Jeśli jednak parametr SkipCNCheck jest określony jako część parametru SessionOption, nazwa pospolita certyfikatu serwera nie musi być zgodna z nazwą hosta serwera. Parametr SkipCNCheck powinien być używany tylko dla zaufanych maszyn.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ResourceURI
Zawiera identyfikator URI (Uniform Resource Identifier) klasy zasobów lub wystąpienia. Identyfikator URI służy do identyfikowania określonego typu zasobu, takiego jak dyski lub procesy, na komputerze.
Identyfikator URI składa się z prefiksu i ścieżki do zasobu. Na przykład:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
Typ: | Uri |
Aliasy: | ruri |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-SelectorSet
Określa zestaw par wartości używanych do wybierania określonych wystąpień zasobów zarządzania. SelektorSet jest używany, gdy istnieje więcej niż jedno wystąpienie zasobu. Wartość SelectorSet musi być tabelą skrótów.
W poniższym przykładzie pokazano, jak wprowadzić wartość dla tego parametru:
-SelectorSet @{Name="WinRM";ID="yyy"}
Typ: | Hashtable |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-SessionOption
Definiuje zestaw opcji rozszerzonych dla sesji zarządzania usługami WS. Wprowadź obiekt SessionOption utworzony przy użyciu New-WSManSessionOption
polecenia cmdlet . Aby uzyskać więcej informacji na temat dostępnych opcji, zobacz New-WSManSessionOption
.
Typ: | SessionOption |
Aliasy: | so |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-UseSSL
Określa, że protokół Secure Sockets Layer (SSL) jest używany do nawiązywania połączenia z komputerem zdalnym. Domyślnie nie jest używane szyfrowanie SSL.
Usługa WS-Management szyfruje całą zawartość programu PowerShell przesyłaną przez sieć. Parametr UseSSL umożliwia określenie dodatkowej ochrony protokołu HTTPS zamiast protokołu HTTP. Jeśli protokół SSL nie jest dostępny na porcie używanym do połączenia i określisz ten parametr, polecenie zakończy się niepowodzeniem.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ValueSet
Określa tabelę skrótów, która pomaga zmodyfikować zasób zarządzania. Zasób zarządzania określa się przy użyciu parametrów ResourceURI i SelectorSet . Wartość parametru ValueSet musi być tabelą skrótów.
Typ: | Hashtable |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
To polecenie cmdlet zwraca wynik operacji jako obiekt XmlElement .