Udostępnij przez


Connect-WSMan

Nawiązuje połączenie z usługą WinRM na komputerze zdalnym.

Składnia

ComputerName (domyślnie)

Connect-WSMan
    [[-ComputerName] <String>]
    [-ApplicationName <String>]
    [-OptionSet <Hashtable>]
    [-Port <Int32>]
    [-SessionOption <SessionOption>]
    [-UseSSL]
    [-Credential <PSCredential>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

URI

Connect-WSMan
    [-ConnectionURI <Uri>]
    [-OptionSet <Hashtable>]
    [-Port <Int32>]
    [-SessionOption <SessionOption>]
    [-Credential <PSCredential>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

Opis

Polecenie cmdlet Connect-WSMan nawiązuje połączenie z usługą WinRM na komputerze zdalnym i ustanawia 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 również użyć tego polecenia cmdlet, aby nawiązać połączenie z usługą WinRM na komputerze zdalnym przed zmianą dostawcy programu 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 polecenie cmdlet Disconnect-WSMan.

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 cmdlet Connect-WSMan jest zwykle używane w kontekście dostawcy programu 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 do pobrania 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 pomocą okna dialogowego lub w wierszu polecenia, w zależności od ustawień rejestru systemu.

Drugie polecenie używa parametru Credential w celu przekazania poświadczeń przechowywanych w $cred do Connect-WSMan. Connect-WSMan następnie nawiązuje połączenie z serwerem systemu zdalnego01 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 przez port 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:\>
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 zdalnym server01 przy użyciu opcji połączenia zdefiniowanych w New-WSManSessionOption polecenia.

Pierwsze polecenie używa New-WSManSessionOption do przechowywania zestawu opcji ustawień połączenia w zmiennej $a. W takim przypadku opcje sesji ustawiają czas połączenia poza 30 sekund (30 000 milisekund).

Drugie polecenie używa parametru SessionOption w celu przekazania poświadczeń przechowywanych w zmiennej $a w celu Connect-WSMan. Następnie Connect-WSMan nawiązuje połączenie 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. Pełny identyfikator zdalnego punktu końcowego ma następujący format:

<transport>://<server>:<port>/<ApplicationName>

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 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 programem Windows PowerShell. W takim przypadku usługi IIS hostuje usługi sieci Web do zarządzania (WS-Management) w celu zwiększenia wydajności.

Właściwości parametru

Typ:String
Domyślna wartość:Wsman
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

ComputerName
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Authentication

Określa mechanizm uwierzytelniania, który ma być używany na serwerze. Dopuszczalne wartości tego parametru to:

  • Podstawowy. 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.
  • Domyślne. Użyj metody uwierzytelniania zaimplementowanej przez protokół WS-Management. Jest to wartość domyślna.
  • Trawić. 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.
  • Negocjować. Negocjowanie 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 umożliwia negocjowanie w celu określenia, czy jest używany protokół Kerberos, czy NTLM.
  • Zaufanie SSP. 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: 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.

Właściwości parametru

Typ:AuthenticationMechanism
Domyślna wartość:Default
Dopuszczalne wartości:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Uwierzytelnianie, Am

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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 polecenia Get-Item lub Get-ChildItem w dysku Windows PowerShell Cert: .

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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. 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.

Właściwości parametru

Typ:String
Domyślna wartość:Localhost
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:cn

Zestawy parametrów

ComputerName
Position:0
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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.

Właściwości parametru

Typ:Uri
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

URI
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Credential

Określa konto użytkownika, które ma uprawnienia do wykonania tej akcji. Wartość domyślna to bieżący użytkownik. 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 polecenie cmdlet Get-Credential. Po wpisaniu nazwy użytkownika, ten cmdlet wyświetli monit o podanie hasła.

Właściwości parametru

Typ:PSCredential
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:cred, Bez kontekstu nie można zapewnić adekwatnego tłumaczenia litery "c".

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-OptionSet

Określa zestaw przełączników do usługi w celu zmodyfikowania lub uściślinia charakteru żądania. Te przełączniki przypominają przełączniki używane 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}

Właściwości parametru

Typ:Hashtable
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:system operacyjny

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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 komputerów.

Właściwości parametru

Typ:Int32
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SessionOption

Określa opcje rozszerzone dla sesji WS-Management. Wprowadź obiekt SessionOption tworzony przy użyciu polecenia cmdlet New-WSManSessionOption. Aby uzyskać więcej informacji na temat dostępnych opcji, wpisz Get-Help New-WSManSessionOption.

Właściwości parametru

Typ:SessionOption
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:so

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-UseSSL

Określa, że protokół Secure Sockets Layer (SSL) jest używany do nawiązywania połączenia z komputerem zdalnym. Domyślnie protokół SSL nie jest używany.

WS-Management szyfruje całą zawartość programu 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 na potrzeby połączenia i określisz ten parametr, polecenie zakończy się niepowodzeniem.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

ComputerName
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

None

To polecenie cmdlet nie akceptuje żadnych danych wejściowych.

Dane wyjściowe

None

To polecenie cmdlet nie generuje żadnych danych wyjściowych.

Uwagi

  • Polecenia zarządzania lub dane zarządzania można uruchamiać na komputerze zdalnym bez tworzenia sesji WS-Management. Można to zrobić przy użyciu parametrów ComputerName Invoke-WSManAction i Get-WSManInstance. W przypadku używania parametru ComputerName program Windows PowerShell tworzy tymczasowe połączenie, które jest używane dla pojedynczego polecenia. Po uruchomieniu polecenia połączenie zostanie zamknięte.