Delen via


New-PSSession

Hiermee maakt u een permanente verbinding met een lokale of externe computer.

Syntaxis

ComputerName (Standaard)

New-PSSession
    [[-ComputerName] <String[]>]
    [-Credential <PSCredential>]
    [-Name <String[]>]
    [-EnableNetworkAccess]
    [-ConfigurationName <String>]
    [-Port <Int32>]
    [-UseSSL]
    [-ApplicationName <String>]
    [-ThrottleLimit <Int32>]
    [-SessionOption <PSSessionOption>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

Uri

New-PSSession
    [-ConnectionUri] <Uri[]>
    [-Credential <PSCredential>]
    [-Name <String[]>]
    [-EnableNetworkAccess]
    [-ConfigurationName <String>]
    [-ThrottleLimit <Int32>]
    [-AllowRedirection]
    [-SessionOption <PSSessionOption>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

VMId

New-PSSession
    [-VMId] <Guid[]>
    -Credential <PSCredential>
    [-Name <String[]>]
    [-ConfigurationName <String>]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

VMName

New-PSSession
    -Credential <PSCredential>
    -VMName <String[]>
    [-Name <String[]>]
    [-ConfigurationName <String>]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

Session

New-PSSession
    [[-Session] <PSSession[]>]
    [-Name <String[]>]
    [-EnableNetworkAccess]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

ContainerId

New-PSSession
    -ContainerId <String[]>
    [-Name <String[]>]
    [-ConfigurationName <String>]
    [-RunAsAdministrator]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

Description

De cmdlet New-PSSession maakt een PowerShell-sessie (PSSession) op een lokale of externe computer. Wanneer u een PSSession-maakt, maakt PowerShell een permanente verbinding met de externe computer.

Gebruik een PSSession- om meerdere opdrachten uit te voeren waarmee gegevens worden gedeeld, zoals een functie of de waarde van een variabele. Als u opdrachten wilt uitvoeren in een PSSession-, gebruikt u de cmdlet Invoke-Command. Als u de PSSession- wilt gebruiken om rechtstreeks met een externe computer te communiceren, gebruikt u de cmdlet Enter-PSSession. Zie about_PSSessionsvoor meer informatie.

U kunt opdrachten uitvoeren op een externe computer zonder een PSSession- te maken met behulp van de ComputerName parameters van Enter-PSSession of Invoke-Command. Wanneer u de parameter ComputerName gebruikt, maakt PowerShell een tijdelijke verbinding die wordt gebruikt voor de opdracht en vervolgens wordt gesloten.

Voorbeelden

Voorbeeld 1: Een sessie maken op de lokale computer

$s = New-PSSession

Met deze opdracht maakt u een nieuwe PSSession- op de lokale computer en slaat u de PSSession- op in de $s variabele.

U kunt deze PSSession- nu gebruiken om opdrachten uit te voeren op de lokale computer.

Voorbeeld 2: Een sessie maken op een externe computer

$Server01 = New-PSSession -ComputerName Server01

Met deze opdracht maakt u een nieuwe PSSession- op de Server01-computer en slaat u deze op in de $Server01 variabele.

Wanneer u meerdere PSSession--objecten maakt, wijst u deze toe aan variabelen met nuttige namen. Dit helpt u bij het beheren van de PSSession objecten in volgende opdrachten.

Voorbeeld 3: Sessies maken op meerdere computers

$s1, $s2, $s3 = New-PSSession -ComputerName Server01,Server02,Server03

Met deze opdracht maakt u drie PSSession objecten, één op elk van de computers die zijn opgegeven door de ComputerName parameter.

De opdracht gebruikt de toewijzingsoperator (=) om de nieuwe PSSession--objecten toe te wijzen aan variabelen: $s1, $s2, $s3. De server01-PSSession- wordt toegewezen aan $s1, de PSSession- van Server02 aan $s2en de Server03 PSSession- aan $s3.

Wanneer u meerdere objecten aan een reeks variabelen toewijst, wijst PowerShell elk object respectievelijk toe aan een variabele in de reeks. Als er meer objecten zijn dan variabelen, worden alle resterende objecten toegewezen aan de laatste variabele. Als er meer variabelen zijn dan objecten, zijn de resterende variabelen leeg ($null).

Voorbeeld 4: Een sessie maken met een opgegeven poort

New-PSSession -ComputerName Server01 -Port 8081 -UseSSL -ConfigurationName E12

Met deze opdracht maakt u een nieuwe PSSession- op de Server01-computer die verbinding maakt met serverpoort 8081 en het SSL-protocol gebruikt. De nieuwe PSSession maakt gebruik van een alternatieve sessieconfiguratie met de naam E12.

Voordat u de poort instelt, moet u de WinRM-listener op de externe computer configureren om te luisteren op poort 8081. Zie de beschrijving van de parameter Port voor meer informatie.

Voorbeeld 5: Een sessie maken op basis van een bestaande sessie

New-PSSession -Session $s -Credential Domain01\User01

Met deze opdracht maakt u een PSSession- met dezelfde eigenschappen als een bestaande PSSession-. U kunt deze opdrachtindeling gebruiken wanneer de resources van een bestaande PSSession- uitgeput zijn en een nieuwe PSSession- nodig is om een deel van de vraag te offloaden.

De opdracht gebruikt de parameter Session van New-PSSession om de PSSession op te geven opgeslagen in de $s variabele. Hierbij worden de referenties van de Domain1\Admin01 gebruiker gebruikt om de opdracht te voltooien.

Voorbeeld 6: Een sessie maken met een globaal bereik in een ander domein

$Global:s = New-PSSession -ComputerName Server1.Domain44.Corpnet.Fabrikam.com -Credential Domain01\Admin01

In dit voorbeeld ziet u hoe u een PSSession- maakt met een globaal bereik op een computer in een ander domein.

Standaard worden PSSession- objecten die op de opdrachtregel zijn gemaakt, gemaakt met lokaal bereik en PSSession objecten die in een script zijn gemaakt, een scriptbereik hebben.

Als u een PSSession- met globaal bereik wilt maken, maakt u een nieuwe PSSession- en slaat u de PSSession- op in een variabele die wordt omgezet in een globaal bereik. In dit geval wordt de $s variabele naar een globaal bereik gecast.

De opdracht gebruikt de parameter ComputerName om de externe computer op te geven. Omdat de computer zich in een ander domein bevindt dan het gebruikersaccount, wordt de volledige naam van de computer opgegeven samen met de referenties van de gebruiker.

Voorbeeld 7: Sessies maken voor veel computers

$rs = Get-Content C:\Test\Servers.txt | New-PSSession -ThrottleLimit 50

Met deze opdracht maakt u een PSSession- op elk van de 200 computers die worden vermeld in het Servers.txt-bestand en worden de resulterende PSSession- opgeslagen in de $rs variabele. De PSSession--objecten hebben een beperkingslimiet van 50.

U kunt deze opdrachtindeling gebruiken wanneer de namen van computers worden opgeslagen in een database, spreadsheet, tekstbestand of een andere tekst converteerbare indeling.

Voorbeeld 8: Een sessie maken met behulp van een URI

$s = New-PSSession -Uri http://Server01:91/NewSession -Credential Domain01\User01

Met deze opdracht maakt u een PSSession- op de Server01-computer en slaat deze op in de $s variabele. Hierbij wordt de URI- parameter gebruikt om het transportprotocol, de externe computer, de poort en een alternatieve sessieconfiguratie op te geven. Ook wordt de parameter Credential gebruikt om een gebruikersaccount op te geven dat is gemachtigd om een sessie op de externe computer te maken.

Voorbeeld 9: Een achtergrondtaak uitvoeren in een set sessies

$s = New-PSSession -ComputerName (Get-Content Servers.txt) -Credential Domain01\Admin01 -ThrottleLimit 16
Invoke-Command -Session $s -ScriptBlock {Get-Process powershell} -AsJob

Met deze opdrachten maakt u een set PSSession--objecten en voert u vervolgens een achtergrondtaak uit in elk van de PSSession--objecten.

Met de eerste opdracht maakt u een nieuwe PSSession- op elke computer die in het Servers.txt-bestand wordt vermeld. De cmdlet New-PSSession wordt gebruikt om de PSSession-te maken. De waarde van de parameter ComputerName is een opdracht die gebruikmaakt van de Get-Content cmdlet om de lijst met computernamen op te halen die het Servers.txt bestand.

De opdracht gebruikt de parameter Credential om de PSSession--objecten te maken die de machtiging van een domeinbeheerder hebben. Hierbij wordt de parameter ThrottleLimit gebruikt om de opdracht te beperken tot 16 gelijktijdige verbindingen. Met de opdracht wordt de PSSession objecten opgeslagen in de variabele $s.

De tweede opdracht gebruikt de parameter AsJob van de Invoke-Command cmdlet om een achtergrondtaak te starten die een Get-Process powershell opdracht uitvoert in elk van de PSSession--objecten in $s.

Zie about_Jobs en about_Remote_Jobsvoor meer informatie over PowerShell-achtergrondtaken.

Voorbeeld 10: Een sessie voor een computer maken met behulp van de URI

New-PSSession -ConnectionURI https://management.exchangelabs.com/Management

Met deze opdracht maakt u een PSSession objecten die verbinding maken met een computer die is opgegeven door een URI in plaats van een computernaam.

Voorbeeld 11: Een sessieoptie maken

$so = New-PSSessionOption -SkipCACheck
New-PSSession -ConnectionUri https://management.exchangelabs.com/Management -SessionOption $so -Credential Server01\Admin01

In dit voorbeeld ziet u hoe u een sessieoptieobject maakt en de parameter SessionOption gebruikt.

De eerste opdracht maakt gebruik van de New-PSSessionOption cmdlet om een sessieoptie te maken. Het resulterende SessionOption-object wordt opgeslagen in de variabele $so.

De tweede opdracht maakt gebruik van de optie in een nieuwe sessie. De opdracht maakt gebruik van de cmdlet New-PSSession om een nieuwe sessie te maken. De waarde van de parameter SessionOption is het SessionOption-object in de variabele $so.

Parameters

-AllowRedirection

Geeft aan dat deze cmdlet omleiding van deze verbinding met een alternatieve URI (Uniform Resource Identifier) toestaat.

Wanneer u de parameter ConnectionURI gebruikt, kan de externe bestemming een instructie retourneren om om te leiden naar een andere URI. PowerShell leidt standaard geen verbindingen om, maar u kunt deze parameter gebruiken om de verbinding om te leiden.

U kunt ook het aantal keren beperken dat de verbinding wordt omgeleid door de waarde van de MaximumConnectionRedirectionCount sessieoptie te wijzigen. Gebruik de parameter MaximumRedirection van de cmdlet New-PSSessionOption of stel de eigenschap MaximumConnectionRedirectionCount in van de $PSSessionOption voorkeursvariabele. De standaardwaarde is 5.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False

Parametersets

Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-ApplicationName

Hiermee geeft u het naamsegment van de toepassing van de verbindings-URI. Gebruik deze parameter om de naam van de toepassing op te geven wanneer u de ConnectionURI parameter in de opdracht niet gebruikt.

De standaardwaarde is de waarde van de $PSSessionApplicationName voorkeursvariabele op de lokale computer. Als deze voorkeursvariabele niet is gedefinieerd, wordt de standaardwaarde WSMAN. Deze waarde is geschikt voor de meeste toepassingen. Zie about_Preference_Variablesvoor meer informatie.

De WinRM-service gebruikt de naam van de toepassing om een listener te selecteren voor de service van de verbindingsaanvraag. De waarde van deze parameter moet overeenkomen met de waarde van de eigenschap URLPrefix van een listener op de externe computer.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Authentication

Hiermee geeft u het mechanisme op dat wordt gebruikt om de referenties van de gebruiker te verifiëren. De acceptabele waarden voor deze parameter zijn:

  • Default
  • Basic
  • Credssp
  • Digest
  • Kerberos
  • Negotiate
  • NegotiateWithImplicitCredential

De standaardwaarde is Default.

Zie Opsomming AuthenticationMechanismvoor meer informatie over de waarden van deze parameter.

Voorzichtigheid

CredSSP-verificatie (Credential Security Support Provider), waarbij de gebruikersreferenties worden doorgegeven aan een externe computer die moet worden geverifieerd, is ontworpen voor opdrachten waarvoor verificatie is vereist voor meer dan één resource, zoals toegang tot een externe netwerkshare. Dit mechanisme verhoogt het beveiligingsrisico van de externe bewerking. Als de externe computer is aangetast, kunnen de referenties die aan de computer worden doorgegeven, worden gebruikt om de netwerksessie te beheren.

Parametereigenschappen

Type:AuthenticationMechanism
Default value:None
Geaccepteerde waarden:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False
Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten: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 certificaat wilt ophalen, gebruikt u de opdracht Get-Item of Get-ChildItem in het PowerShell-Cert:-station.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False
Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-ComputerName

Hiermee geeft u een matrix van namen van computers. Met deze cmdlet maakt u een permanente verbinding (PSSession) met de opgegeven computer. Als u meerdere computernamen invoert, maakt New-PSSession meerdere PSSession objecten, één voor elke computer. De standaardwaarde is de lokale computer.

Typ de NetBIOS-naam, een IP-adres of een volledig gekwalificeerde domeinnaam van een of meer externe computers. Als u de lokale computer wilt opgeven, typt u de computernaam, localhostof een punt (.). Wanneer de computer zich in een ander domein bevindt dan de gebruiker, is de volledig gekwalificeerde domeinnaam vereist. U kunt ook een computernaam, tussen aanhalingstekens, doorsluisen naar New-PSSession.

Als u een IP-adres wilt gebruiken in de waarde van de parameter ComputerName, moet de opdracht de parameter Credential bevatten. De computer moet ook worden geconfigureerd voor HTTPS-transport of het IP-adres van de externe computer moet worden opgenomen in de winRM TrustedHosts-lijst op de lokale computer. Zie 'How to Add a Computer to the Trusted Host List' (Een computer toevoegen aan de lijst met vertrouwde hosts) in about_Remote_Troubleshootingvoor instructies voor het toevoegen van een computernaam aan de lijst TrustedHosts.

Als u de lokale computer wilt opnemen in de waarde van de parameter ComputerName, start u Windows PowerShell met behulp van de optie Als administrator uitvoeren.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False
Aliassen:Cn

Parametersets

ComputerName
Position:0
Verplicht:False
Waarde uit pijplijn:True
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-ConfigurationName

Hiermee geeft u de sessieconfiguratie die wordt gebruikt voor de nieuwe PSSession.

Voer een configuratienaam of de volledig gekwalificeerde resource-URI in voor een sessieconfiguratie. Als u alleen de configuratienaam opgeeft, wordt de volgende schema-URI voorafgegaan: http://schemas.microsoft.com/PowerShell.

De sessieconfiguratie voor een sessie bevindt zich op de externe computer. Als de opgegeven sessieconfiguratie niet bestaat op de externe computer, mislukt de opdracht.

De standaardwaarde is de waarde van de $PSSessionConfigurationName voorkeursvariabele op de lokale computer. Als deze voorkeursvariabele niet is ingesteld, wordt de standaardwaarde Microsoft.PowerShell. Zie about_Preference_Variablesvoor meer informatie.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
VMId
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
VMName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
ContainerId
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-ConnectionUri

Hiermee geeft u een URI op waarmee het verbindingseindpunt voor de sessie wordt gedefinieerd. De URI moet volledig gekwalificeerd zijn. De notatie van deze tekenreeks is als volgt:

<Transport>://<ComputerName>:<Port>/<ApplicationName>

De standaardwaarde is als volgt:

http://localhost:5985/WSMAN

Als u geen ConnectionURI-opgeeft, kunt u de parameters UseSSL, ComputerName, Porten ApplicationName parameters gebruiken om de ConnectionURI--waarden op te geven.

Geldige waarden voor het transportsegment van de URI zijn HTTP en HTTPS. Als u een verbindings-URI met een transportsegment opgeeft, maar geen poort opgeeft, wordt de sessie gemaakt met standaardenpoorten: 80 voor HTTP en 443 voor HTTPS. Als u de standaardpoorten voor externe communicatie met PowerShell wilt gebruiken, geeft u poort-5985 op voor HTTP of 5986 voor HTTPS.

Als de doelcomputer de verbinding omleidt naar een andere URI, voorkomt PowerShell de omleiding, tenzij u de AllowRedirection parameter in de opdracht gebruikt.

Parametereigenschappen

Type:

Uri[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False
Aliassen:URI (Uniform Resource Identifier), CU

Parametersets

Uri
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-ContainerId

Hiermee geeft u een matrix van id's van containers. Met deze cmdlet wordt een interactieve sessie gestart met elk van de opgegeven containers. Gebruik de opdracht docker ps om een lijst met container-id's op te halen. Zie de Help voor de opdracht docker ps voor meer informatie.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ContainerId
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Credential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. De standaardwaarde is de huidige gebruiker.

Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential--object in dat is gegenereerd door de Get-Credential cmdlet. Als u een gebruikersnaam typt, wordt u gevraagd het wachtwoord in te voeren.

Referenties worden opgeslagen in een PSCredential-object en het wachtwoord wordt opgeslagen als een SecureString-.

Notitie

Zie voor meer informatie over SecureString gegevensbeveiliging Hoe veilig is SecureString?.

Parametereigenschappen

Type:PSCredential
Default value:Current user
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
VMId
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False
VMName
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-EnableNetworkAccess

Geeft aan dat deze cmdlet een interactief beveiligingstoken toevoegt aan loopbacksessies. Met het interactieve token kunt u opdrachten uitvoeren in de loopbacksessie waarmee gegevens van andere computers worden opgehaald. U kunt bijvoorbeeld een opdracht uitvoeren in de sessie waarmee XML-bestanden van een externe computer naar de lokale computer worden gekopieerd.

Een loopbacksessie is een PSSession- die afkomstig is en eindigt op dezelfde computer. Als u een loopbacksessie wilt maken, laat u de parameter ComputerName weg of stelt u de waarde in op punt (.), localhostof de naam van de lokale computer.

Deze cmdlet maakt standaard loopbacksessies met behulp van een netwerktoken, wat mogelijk onvoldoende machtigingen biedt voor verificatie bij externe computers.

De parameter EnableNetworkAccess is alleen van kracht in loopbacksessies. Als u EnableNetworkAccess gebruikt wanneer u een sessie op een externe computer maakt, slaagt de opdracht, maar wordt de parameter genegeerd.

U kunt externe toegang ook inschakelen in een loopbacksessie met behulp van de CredSSP waarde van de parameter Authentication, waarmee de sessiereferenties worden gedelegeerd aan andere computers.

Als u de computer wilt beschermen tegen schadelijke toegang, kunnen verbroken loopbacksessies met interactieve tokens, die zijn gemaakt met behulp van de parameter EnableNetworkAccess, alleen opnieuw verbinding maken vanaf de computer waarop de sessie is gemaakt. Verbroken sessies waarvoor CredSSP-verificatie wordt gebruikt, kunnen opnieuw worden verbonden vanaf andere computers. Zie Disconnect-PSSessionvoor meer informatie.

Deze parameter is geïntroduceerd in PowerShell 3.0.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False
Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False
Session
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Name

Hiermee geeft u een beschrijvende naam voor de PSSession.

U kunt de naam gebruiken om te verwijzen naar de PSSession- wanneer u andere cmdlets gebruikt, zoals Get-PSSession en Enter-PSSession. De naam hoeft niet uniek te zijn voor de computer of de huidige sessie.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Port

Hiermee geeft u de netwerkpoort op de externe computer die wordt gebruikt voor deze verbinding. Als u verbinding wilt maken met een externe computer, moet de externe computer luisteren op de poort die door de verbinding wordt gebruikt. De standaardpoorten zijn 5985, de WinRM-poort voor HTTP en 5986, de WinRM-poort voor HTTPS.

Voordat u een andere poort gebruikt, moet u de WinRM-listener op de externe computer configureren om naar die poort te luisteren. Gebruik de volgende opdrachten om de listener te configureren:

  1. winrm delete winrm/config/listener?Address=*+Transport=HTTP
  2. winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}

Gebruik de parameter Port niet, tenzij u dit moet doen. De poortinstelling in de opdracht is van toepassing op alle computers of sessies waarop de opdracht wordt uitgevoerd. Een alternatieve poortinstelling kan verhinderen dat de opdracht wordt uitgevoerd op alle computers.

Parametereigenschappen

Type:Int32
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-RunAsAdministrator

Geeft aan dat de PSSession- als beheerder wordt uitgevoerd.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ContainerId
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Session

Hiermee geeft u een matrix van PSSession objecten die door deze cmdlet worden gebruikt als model voor de nieuwe PSSession-. Met deze parameter maakt u nieuwe PSSession objecten met dezelfde eigenschappen als de opgegeven PSSession objecten.

Voer een variabele in die de PSSession objecten bevat of een opdracht waarmee de PSSession- objecten worden gemaakt of opgehaald, zoals een New-PSSession of Get-PSSession opdracht.

De resulterende PSSession--objecten dezelfde computernaam, toepassingsnaam, verbindings-URI, poort, configuratienaam, beperkingslimiet en SSL-waarde (Secure Sockets Layer) hebben als de originelen, maar ze hebben een andere weergavenaam, id en exemplaar-id (GUID).

Parametereigenschappen

Type:

PSSession[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

Session
Position:0
Verplicht:False
Waarde uit pijplijn:True
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-SessionOption

Hiermee geeft u geavanceerde opties voor de sessie. Voer een SessionOption--object in, zoals een object dat u maakt met behulp van de New-PSSessionOption-cmdlet of een hash-tabel waarin de sleutels namen van sessieopties zijn en de waarden sessieoptiewaarden zijn.

De standaardwaarden voor de opties worden bepaald door de waarde van de $PSSessionOption voorkeursvariabele, als deze is ingesteld. Anders worden de standaardwaarden ingesteld op basis van opties die zijn ingesteld in de sessieconfiguratie.

De waarden voor sessieopties hebben voorrang op standaardwaarden voor sessies die zijn ingesteld in de $PSSessionOption voorkeursvariabele en in de sessieconfiguratie. Ze hebben echter geen voorrang op maximumwaarden, quota of limieten die zijn ingesteld in de sessieconfiguratie.

Zie New-PSSessionOptionvoor een beschrijving van de sessieopties die de standaardwaarden bevatten. Zie $PSSessionOptionvoor meer informatie over de voorkeursvariabele. Zie about_Session_Configurationsvoor meer informatie over sessieconfiguraties.

Parametereigenschappen

Type:PSSessionOption
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False
Uri
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-ThrottleLimit

Hiermee geeft u het maximum aantal gelijktijdige verbindingen op dat tot stand kan worden gebracht om deze opdracht uit te voeren. Als u deze parameter weglaat of een waarde invoert van 0 (nul), wordt de standaardwaarde, 32, gebruikt.

De beperkingslimiet is alleen van toepassing op de huidige opdracht, niet op de sessie of op de computer.

Parametereigenschappen

Type:Int32
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-UseSSL

Geeft aan dat deze cmdlet het SSL-protocol gebruikt om een verbinding met de externe computer tot stand te brengen. SSL wordt standaard niet gebruikt.

WS-Management versleutelt alle PowerShell-inhoud die via het netwerk wordt verzonden. De parameter UseSSL biedt een extra beveiliging waarmee de gegevens via een HTTPS-verbinding worden verzonden in plaats van een HTTP-verbinding.

Als u deze parameter gebruikt, maar SSL niet beschikbaar is op de poort die wordt gebruikt voor de opdracht, mislukt de opdracht.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ComputerName
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-VMId

Hiermee geeft u een matrix van virtuele-machine-id's. Met deze cmdlet wordt een interactieve PowerShell Direct-sessie gestart met elk van de opgegeven virtuele machines. Zie Automatisering en beheer van virtuele machines met behulp van PowerShellvoor meer informatie.

Gebruik Get-VM om de virtuele machines te zien die beschikbaar zijn op uw Hyper-V-host.

Parametereigenschappen

Type:

Guid[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False
Aliassen:VMGuid

Parametersets

VMId
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-VMName

Hiermee geeft u een matrix van namen van virtuele machines. Met deze cmdlet wordt een interactieve PowerShell Direct-sessie gestart met elk van de opgegeven virtuele machines. Zie Automatisering en beheer van virtuele machines met behulp van PowerShellvoor meer informatie.

Gebruik Get-VM om de virtuele machines te zien die beschikbaar zijn op uw Hyper-V-host.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

VMName
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

CommonParameters

Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.

Invoerwaarden

String

U kunt een tekenreeks doorsluisen naar deze cmdlet.

System.URI

U kunt een URI doorsluisen naar deze cmdlet.

PSSession

U kunt een sessieobject doorsluisen naar deze cmdlet.

Uitvoerwaarden

PSSession

Notities

Windows PowerShell bevat de volgende aliassen voor New-PSSession:

  • nsn

  • Deze cmdlet maakt gebruik van de externe infrastructuur van PowerShell. Als u deze cmdlet wilt gebruiken, moeten de lokale computer en alle externe computers worden geconfigureerd voor externe communicatie met PowerShell. Zie about_Remote_Requirementsvoor meer informatie.

  • Als u een PSSession- op de lokale computer wilt maken, start u PowerShell met de optie Als administrator uitvoeren.

  • Wanneer u klaar bent met de PSSession-, gebruikt u de Remove-PSSession cmdlet om de PSSession- te verwijderen en de bijbehorende resources vrij te geven.