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-WSMan
zijn 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\User01
of 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.