Connect-WSMan
Nawiązuje połączenie z usługą WinRM na komputerze zdalnym.
Składnia
Connect-WSMan
[-ApplicationName <String>]
[[-ComputerName] <String>]
[-OptionSet <Hashtable>]
[-Port <Int32>]
[-SessionOption <SessionOption>]
[-UseSSL]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Connect-WSMan
[-ConnectionURI <Uri>]
[-OptionSet <Hashtable>]
[-Port <Int32>]
[-SessionOption <SessionOption>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Opis
To polecenie cmdlet jest dostępne tylko na platformie Windows.
Polecenie Connect-WSMan
cmdlet łączy się z usługą WinRM na komputerze zdalnym i nawiązuje trwałe połączenie z komputerem zdalnym. To polecenie cmdlet można użyć w kontekście dostawcy WSMan, aby nawiązać połączenie z usługą WinRM na komputerze zdalnym. Można jednak użyć tego polecenia cmdlet do nawiązania połączenia z usługą WinRM na komputerze zdalnym przed zmianą dostawcy WSMan. Komputer zdalny jest wyświetlany w katalogu głównym dostawcy programu WSMan.
Jawne poświadczenia są wymagane, gdy komputery klienckie i serwerowe znajdują się w różnych domenach lub grupach roboczych.
Aby uzyskać informacje o tym, jak odłączyć się od usługi WinRM na komputerze zdalnym, zobacz Disconnect-WSMan
polecenie cmdlet.
Przykłady
Przykład 1. Nawiązywanie połączenia z komputerem zdalnym
PS C:\> Connect-WSMan -ComputerName "server01"
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
To polecenie tworzy połączenie z komputerem zdalnym server01.
Polecenie Connect-WSMan
cmdlet jest zwykle używane w kontekście dostawcy WSMan w celu nawiązania połączenia z komputerem zdalnym, w tym przypadku komputera server01. Można jednak użyć polecenia cmdlet , aby nawiązać połączenia z komputerami zdalnymi przed zmianą dostawcy programu WSMan. Te połączenia są wyświetlane na liście ComputerName .
Przykład 2. Nawiązywanie połączenia z komputerem zdalnym przy użyciu poświadczeń administratora
PS C:\> $cred = Get-Credential Administrator
PS C:\> Connect-WSMan -ComputerName "server01" -Credential $cred
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
To polecenie tworzy połączenie z serwerem systemu zdalnego01 przy użyciu poświadczeń konta administratora.
Pierwsze polecenie używa polecenia cmdlet Get-Credential w celu uzyskania poświadczeń administratora, a następnie zapisuje je w zmiennej $cred
. Get-Credential
monituje o podanie hasła nazwy użytkownika i hasła za pośrednictwem okna dialogowego lub w wierszu polecenia, w zależności od ustawień rejestru systemu.
Drugie polecenie używa parametru Credential do przekazywania poświadczeń przechowywanych w $cred do Connect-WSMan
. Connect-WSMan
następnie nawiązuje połączenie z serwerem systemu zdalnego server01 przy użyciu poświadczeń administratora.
Przykład 3. Nawiązywanie połączenia z komputerem zdalnym za pośrednictwem określonego portu
PS C:\> Connect-WSMan -ComputerName "server01" -Port 80
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
To polecenie tworzy połączenie z komputerem zdalnym server01 za pośrednictwem portu 80.
Przykład 4. Nawiązywanie połączenia z komputerem zdalnym przy użyciu opcji połączenia
PS C:\> $a = New-WSManSessionOption -OperationTimeout 30000
PS C:\> Connect-WSMan -ComputerName "server01" -SessionOption $a
PS C:\> cd wsman:
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
W tym przykładzie jest tworzone połączenie z komputerem remote server01 przy użyciu opcji połączenia zdefiniowanych w poleceniu New-WSManSessionOption
.
Pierwsze polecenie używa do New-WSManSessionOption
przechowywania zestawu opcji ustawień połączenia w zmiennej $a
. W takim przypadku opcje sesji ustawiają limit czasu połączenia z 30 sekundami (30 000 milisekund).
Drugie polecenie używa parametru SessionOption , aby przekazać poświadczenia przechowywane w zmiennej $a
do Connect-WSMan
. Connect-WSMan
Następnie łączy się z komputerem zdalnym server01 przy użyciu określonych opcji sesji.
Parametry
-ApplicationName
Określa nazwę aplikacji w połączeniu. Wartość domyślna parametru ApplicationName to WSMAN. Kompletny 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 domyślne ustawienie programu WSMAN jest odpowiednie dla większości zastosowań. Ten parametr jest przeznaczony do użycia, jeśli wiele komputerów nawiązuje połączenia zdalne z jednym komputerem z uruchomionym Windows PowerShell. W takim przypadku usługi IIS hostuje usługi sieci Web do zarządzania (WS-Management) w celu zwiększenia wydajności.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Authentication
Określa mechanizm uwierzytelniania, który ma być używany na serwerze. Dopuszczalne wartości dla tego parametru to:
Basic
— Podstawowy 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 wyzwanie, który używa ciągu danych określonego przez serwer do zadania.Kerberos
— Komputer kliencki i serwer wzajemnie się uwierzytelniają przy użyciu certyfikatów Protokołu Kerberos.Negotiate
- Negocjacja jest schematem odpowiedzi na wyzwanie, który negocjuje z serwerem lub serwerem proxy w celu określenia schematu do użycia do uwierzytelniania. Na przykład ta wartość parametru umożliwia negocjacje w celu określenia, czy jest używany protokół Kerberos, czy NTLM.CredSSP
— Użyj uwierzytelniania dostawcy obsługi zabezpieczeń poświadczeń (CredSSP), co 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.
Przestroga
Dostawca CredSSP deleguje poświadczenia użytkownika z komputera lokalnego do komputera zdalnego. Ta praktyka zwiększa ryzyko bezpieczeństwa operacji zdalnej. Jeśli bezpieczeństwo komputera zdalnego zostanie naruszone, po przekazaniu do niego poświadczeń można użyć poświadczeń do kontrolowania sesji sieciowej.
Type: | AuthenticationMechanism |
Aliases: | auth, am |
Accepted values: | None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateThumbprint
Określa cyfrowy certyfikat klucza publicznego (X509) konta użytkownika z uprawnieniami do wykonania tej akcji. Wprowadź odcisk palca certyfikatu 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 Windows PowerShell Cert:.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Określa komputer, na którym ma zostać uruchomiona operacja 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. Gdy komputer zdalny znajduje się w innej domenie niż użytkownik, należy użyć w pełni kwalifikowanej nazwy domeny. Możesz przekazać wartość tego parametru do polecenia cmdlet.
Type: | String |
Aliases: | cn |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionURI
Określa punkt końcowy połączenia. Format tego ciągu jest następujący:
<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.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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 jeden zwrócony przez Get-Credential
polecenie cmdlet. Po wpiseniu nazwy użytkownika to polecenie cmdlet wyświetli monit o podanie hasła.
Type: | PSCredential |
Aliases: | cred, c |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-OptionSet
Określa zestaw przełączników do usługi, aby zmodyfikować lub uściślić charakter żą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ę, która przekazuje wartości 1, 2 i 3 dla parametrów a, b i c:
-OptionSet @{a=1;b=2;c=3}
Type: | Hashtable |
Aliases: | os |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Port
Określa port, który ma być używany, gdy klient łączy się 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 komputerów.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionOption
Określa opcje rozszerzone dla sesji WS-Management. Wprowadź obiekt SessionOption utworzony przy użyciu New-WSManSessionOption
polecenia cmdlet . Aby uzyskać więcej informacji na temat dostępnych opcji, wpisz Get-Help New-WSManSessionOption
.
Type: | SessionOption |
Aliases: | so |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
WS-Management szyfruje całą zawartość Windows 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 kończy się niepowodzeniem.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Dane wejściowe
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
None
To polecenie cmdlet nie zwraca żadnych danych wyjściowych.
Uwagi
Można uruchamiać polecenia zarządzania lub wykonywać zapytania dotyczące danych zarządzania na komputerze zdalnym bez tworzenia sesji WS-Management. Można to zrobić przy użyciu parametrów ComputerName i Invoke-WSManAction
Get-WSManInstance
. Jeśli używasz parametru ComputerName, Windows PowerShell tworzy tymczasowe połączenie, które jest używane dla pojedynczego polecenia. Po uruchomieniu polecenia połączenie jest zamknięte.