Delen via


Connect-WSMan

Maakt verbinding met de WinRM-service op een externe computer.

Syntaxis

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>]

Description

Deze cmdlet is alleen beschikbaar op het Windows-platform.

De Connect-WSMan cmdlet maakt verbinding met de WinRM-service op een externe computer en brengt een permanente verbinding tot stand met de externe computer. U kunt deze cmdlet gebruiken in de context van de WSMan-provider om verbinding te maken met de WinRM-service op een externe computer. U kunt deze cmdlet echter ook gebruiken om verbinding te maken met de WinRM-service op een externe computer voordat u overgaat naar de WSMan-provider. De externe computer wordt weergegeven in de hoofdmap van de WSMan-provider.

Expliciete referenties zijn vereist wanneer de client- en servercomputers zich in verschillende domeinen of werkgroepen bevinden.

Zie de Disconnect-WSMan cmdlet voor informatie over het verbreken van de verbinding met de WinRM-service op een externe computer.

Voorbeelden

Voorbeeld 1: Verbinding maken met een externe computer

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

Met deze opdracht maakt u een verbinding met de externe server01-computer.

De Connect-WSMan cmdlet wordt over het algemeen gebruikt in de context van de WSMan-provider om verbinding te maken met een externe computer, in dit geval de server01-computer. U kunt de cmdlet echter gebruiken om verbindingen met externe computers tot stand te brengen voordat u overgaat naar de WSMan-provider. Deze verbindingen worden weergegeven in de lijst ComputerName .

Voorbeeld 2: Verbinding maken met een externe computer met beheerdersreferenties

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

Met deze opdracht maakt u een verbinding met de externe systeemserver01 met behulp van de beheerdersaccountreferenties.

De eerste opdracht maakt gebruik van de cmdlet Get-Credential om de beheerdersreferenties op te halen en slaat deze vervolgens op in de $cred variabele. Get-Credential vraagt u om een wachtwoord van gebruikersnaam en wachtwoord via een dialoogvenster of op de opdrachtregel, afhankelijk van de registerinstellingen van het systeem.

De tweede opdracht maakt gebruik van de referentieparameter om de referenties die zijn opgeslagen in $cred door te geven aan Connect-WSMan. Connect-WSMan maakt vervolgens verbinding met de externe systeemserver01 met behulp van de beheerdersreferenties.

Voorbeeld 3: Verbinding maken met een externe computer via een opgegeven poort

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

Met deze opdracht maakt u een verbinding met de externe server01-computer via poort 80.

Voorbeeld 4: Verbinding maken met een externe computer met behulp van verbindingsopties

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

In dit voorbeeld wordt een verbinding met de externe server01-computer gemaakt met behulp van de verbindingsopties die zijn gedefinieerd in de New-WSManSessionOption opdracht.

De eerste opdracht gebruikt New-WSManSessionOption voor het opslaan van een set verbindingsinstellingsopties in de $a variabele. In dit geval stellen de sessieopties een verbindingstime in van 30 seconden (30.000 milliseconden).

De tweede opdracht maakt gebruik van de parameter SessionOption om de referenties door te geven die in de $a variabele Connect-WSManzijn opgeslagen. Connect-WSMan Maak vervolgens verbinding met de externe server01-computer met behulp van de opgegeven sessieopties.

Parameters

-ApplicationName

Hiermee geeft u de naam van de toepassing in de verbinding. De standaardwaarde van de parameter ApplicationName is WSMAN. De volledige id voor het externe eindpunt heeft de volgende indeling:

<Transport>://<Server>:<Port>/<ApplicationName>

Bijvoorbeeld: http://server01:8080/WSMAN

Internet Information Services (IIS), die als host fungeert voor de sessie, stuurt aanvragen met dit eindpunt door naar de opgegeven toepassing. Deze standaardinstelling van WSMAN is geschikt voor de meeste toepassingen. Deze parameter is ontworpen om te worden gebruikt als veel computers externe verbindingen tot stand brengen met één computer waarop Windows PowerShell wordt uitgevoerd. In dit geval host IIS Web Services for Management (WS-Management) voor efficiëntie.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Authentication

Hiermee geeft u het verificatiemechanisme dat moet worden gebruikt op de server. De aanvaardbare waarden voor deze parameter zijn:

  • Basic- Basic is een schema waarin de gebruikersnaam en het wachtwoord in duidelijke tekst naar de server of proxy worden verzonden.
  • Default - Gebruik de verificatiemethode die is geïmplementeerd door het WS-Management-protocol. Dit is de standaardinstelling.
  • Digest - Digest is een challenge-response-schema dat gebruikmaakt van een door de server opgegeven gegevensreeks voor de uitdaging.
  • Kerberos - De clientcomputer en de server verifiëren elkaar met behulp van Kerberos-certificaten.
  • Negotiate - Onderhandelen is een challenge-response-schema dat onderhandelt met de server of proxy om het schema te bepalen dat moet worden gebruikt voor verificatie. Met deze parameterwaarde kan bijvoorbeeld worden onderhandeld of het Kerberos-protocol of NTLM wordt gebruikt.
  • CredSSP - Gebruik CredSSP-verificatie (Credential Security Support Provider), waarmee de gebruiker referenties kan delegeren. Deze optie is ontworpen voor opdrachten die op één externe computer worden uitgevoerd, maar gegevens verzamelen van of aanvullende opdrachten uitvoeren op andere externe computers.

Let op

CredSSP delegeert de gebruikersreferenties van de lokale computer naar een externe computer. Deze praktijk verhoogt het beveiligingsrisico van de externe bewerking. Als de externe computer wordt aangetast, kunnen de referenties worden gebruikt om de netwerksessie te beheren wanneer er referenties aan worden doorgegeven.

Type:AuthenticationMechanism
Aliassen:auth, am
Geaccepteerde waarden:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CertificateThumbprint

Hiermee geeft u het certificaat van de digitale openbare sleutel (X509) van een gebruikersaccount dat gemachtigd is om deze actie uit te voeren. Voer de vingerafdruk van het certificaat in.

Certificaten worden gebruikt in verificatie op basis van clientcertificaten. Ze kunnen alleen worden toegewezen aan lokale gebruikersaccounts; ze werken niet met domeinaccounts.

Als u een vingerafdruk van een certificaat wilt ophalen, gebruikt u de Get-Item of Get-ChildItem opdracht in het Windows PowerShell-certificaat: station.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ComputerName

Hiermee geeft u de computer waarop de beheerbewerking moet worden uitgevoerd. De waarde kan een volledig gekwalificeerde domeinnaam, een NetBIOS-naam of een IP-adres zijn. Gebruik de naam van de lokale computer, gebruik localhost of gebruik een punt (.) om de lokale computer op te geven. De lokale computer is de standaardinstelling. Wanneer de externe computer zich in een ander domein bevindt dan de gebruiker, moet u een volledig gekwalificeerde domeinnaam gebruiken. U kunt een waarde voor deze parameter doorsluisen naar de cmdlet.

Type:String
Aliassen:cn
Position:0
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ConnectionURI

Hiermee geeft u het verbindingseindpunt op. De notatie van deze tekenreeks is als volgt:

<Transport>://<Server>:<Port>/<ApplicationName>

De volgende tekenreeks is een correct opgemaakte waarde voor deze parameter:

http://Server01:8080/WSMAN

De URI moet volledig gekwalificeerd zijn.

Type:Uri
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. Standaard is dit de huidige gebruiker. Typ een gebruikersnaam, zoals User01, Domain01\User01of User@Domain.com. U kunt ook een PSCredential-object invoeren, zoals een object dat wordt geretourneerd door de Get-Credential cmdlet. Wanneer u een gebruikersnaam typt, wordt u door deze cmdlet gevraagd om een wachtwoord.

Type:PSCredential
Aliassen:cred, c
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-OptionSet

Hiermee geeft u een set switches naar een service om de aard van de aanvraag te wijzigen of verfijnen. Deze lijken op schakelopties die worden gebruikt in opdrachtregelshells omdat ze servicespecifiek zijn. U kunt een willekeurig aantal opties opgeven.

In het volgende voorbeeld ziet u de syntaxis die de waarden 1, 2 en 3 doorgeeft voor de parameters a, b en c:

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliassen:os
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Port

Hiermee geeft u de poort op die moet worden gebruikt wanneer de client verbinding maakt met de WinRM-service. Wanneer het transport HTTP is, is de standaardpoort 80. Wanneer het transport HTTPS is, is de standaardpoort 443.

Wanneer u HTTPS als transport gebruikt, moet de waarde van de parameter ComputerName overeenkomen met de algemene naam (CN) van het certificaat van de server. Als de parameter SkipCNCheck echter is opgegeven als onderdeel van de parameter SessionOption , hoeft de algemene certificaatnaam van de server niet overeen te komen met de hostnaam van de server. De parameter SkipCNCheck mag alleen worden gebruikt voor vertrouwde computers.

Type:Int32
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-SessionOption

Hiermee geeft u uitgebreide opties voor de WS-Management-sessie. Voer een SessionOption-object in dat u maakt met behulp van de New-WSManSessionOption cmdlet. Typ voor meer informatie over de beschikbare opties Get-Help New-WSManSessionOption.

Type:SessionOption
Aliassen:so
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-UseSSL

Hiermee geeft u op dat het SSL-protocol (Secure Sockets Layer) wordt gebruikt om een verbinding met de externe computer tot stand te brengen. Standaard wordt SSL niet gebruikt.

WS-Management versleutelt alle Windows PowerShell-inhoud die via het netwerk wordt verzonden. Met de parameter UseSSL kunt u de extra beveiliging van HTTPS opgeven in plaats van HTTP. Als SSL niet beschikbaar is op de poort die wordt gebruikt voor de verbinding en u deze parameter opgeeft, mislukt de opdracht.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

None

U kunt geen objecten doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet retourneert geen uitvoer.

Notities

U kunt beheeropdrachten uitvoeren of beheergegevens opvragen op een externe computer zonder een WS-Beheersessie te maken. U kunt dit doen met behulp van de computernaamparameters van Invoke-WSManAction en Get-WSManInstance. Wanneer u de parameter ComputerName gebruikt, maakt Windows PowerShell een tijdelijke verbinding die wordt gebruikt voor de ene opdracht. Nadat de opdracht is uitgevoerd, wordt de verbinding gesloten.