Erstellt ein Objekt, das erweiterte Optionen für eine PSSession enthält.

Syntax

New-PSSessionOption [-ApplicationArguments <PSPrimitiveDictionary>] [-CancelTimeOut <int>] [-Culture <CultureInfo>] [-IdleTimeOut <int>] [-MaximumReceivedDataSizePerCommand <int>] [-MaximumReceivedObjectSize <int>] [-MaximumRedirection <int>] [-NoCompression] [-NoEncryption] [-NoMachineProfile] [-OpenTimeOut <int>] [-OperationTimeOut <int>] [-ProxyAccessType {<None> | <IEConfig> | <WinHttpConfig> | <AutoDetect> | <NoProxyServer>}] [-ProxyAuthentication {<Default> | <Basic> | <Negotiate> | <NegotiateWithImplicitCredential> | <Credssp> | <Digest> | <Kerberos>}] [-ProxyCredential <PSCredential>] [-SkipCACheck] [-SkipCNCheck] [-SkipRevocationCheck] [-UICulture <CultureInfo>] [-UseUTF16] [<CommonParameters>]

Beschreibung

Das Cmdlet "New-PSSessionOption" erstellt ein Objekt, das erweiterte Optionen für eine PSSession enthält. Sie können das Objekt als Wert des SessionOption-Parameters von Cmdlets verwenden, die eine PSSession erstellen, z. B. "New-PSSession", "Enter-PSSession" und "Invoke-Command".

Ohne Angabe von Parametern generiert New-PSSessionOption ein Objekt, das die Standardwerte aller Optionen enthält. Da alle Eigenschaften bearbeitet werden können, können Sie das resultierende Objekt als Vorlage verwenden und Standardoptionsobjekte für Ihr Unternehmen erstellen.

Parameter

-ApplicationArguments <PSPrimitiveDictionary>

Gibt eine Hashtabelle an, die direkt an die Sitzungskonfiguration gesendet wird, ohne sie zu interpretieren. Diese Hashtabelle wird der Sitzungskonfiguration als Eigenschaft der PSSenderInfo-Klasse zur Verfügung gestellt.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-CancelTimeOut <int>

Legt fest, wie lange Windows PowerShell auf einen Abbruchvorgang (STRG + C) wartet, bevor der Vorgang beendet wird. Geben Sie einen Wert in Millisekunden ein.

Der Standardwert ist 60000 (eine Minute). Der Wert 0 (null) bedeutet, dass kein Timeout festgelegt ist und der Befehl unendlich fortgesetzt wird.

Erforderlich?

false

Position?

named

Standardwert

60000

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Culture <CultureInfo>

Gibt die Kultur an, die für die PSSession verwendet werden soll. Geben Sie einen Kulturnamen im Format <Sprachcode2> - <Landes-/Regionalcode2>, z. B. "ja-JP", eine Variable, die ein CultureInfo-Objekt enthält, oder einen Befehl ein, mit dem ein CultureInfo-Objekt abgerufen wird, z. B. Get-Culture.

Der Standardwert ist $null, und die Kultur, die beim Erstellen der PSSession im Betriebssystem festgelegt wird, wird in der PSSession verwendet.

Erforderlich?

false

Position?

named

Standardwert

Current culture

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-IdleTimeOut <int>

Legt fest, wie lange die PSSession geöffnet bleibt, wenn der Remotecomputer keine Kommunikationsdaten, einschließlich des Taktsignals, vom lokalen Computer empfängt. Wenn das Intervall abläuft, wird die PSSession geschlossen.

Geben Sie einen Wert in Millisekunden ein. Der Standardwert ist 240000 (4 Minuten). Der Mindestwert ist 60000 (1 Minute).

Wenn sowohl der lokale als auch der Remotecomputer einen Timeoutwert für die Leerlaufzeit angeben, verwendet die PSSession den kürzeren Timeoutwert. Der lokale Computer kann einen Timeoutwert für die Leerlaufzeit mithilfe dieses Parameters oder durch Festlegen des Timeoutwerts in der Umgebungsvariablen "$PSSessionOption" definieren. Der Remotecomputer kann einen Timeoutwert für die Leerlaufzeit in der Konfiguration der WS-Verwaltung (WSMAN:\localhost\shell\idletimeout) angeben.

Erforderlich?

false

Position?

named

Standardwert

240000

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-MaximumReceivedDataSizePerCommand <int>

Gibt die maximale Anzahl von Bytes an, die der lokale Computer in einem einzelnen Befehl vom Remotecomputer empfangen kann. Geben Sie einen Wert in Bytes ein. Standardmäßig gibt es keine Beschränkung der Datengröße.

Diese Option ist dafür ausgelegt, die Ressourcen auf dem Clientcomputer zu schützen.

Erforderlich?

false

Position?

named

Standardwert

No limit

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-MaximumReceivedObjectSize <int>

Gibt die maximale Größe eines Objekts an, das der lokale Computer vom Remotecomputer empfangen kann. Geben Sie einen Wert in Bytes ein. Standardmäßig gibt es keine Beschränkung der Datengröße.

Diese Option ist dafür ausgelegt, die Ressourcen auf dem Clientcomputer zu schützen.

Erforderlich?

false

Position?

named

Standardwert

No limit

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-MaximumRedirection <int>

Legt fest, wie oft Windows PowerShell eine Verbindung an einen alternativen Uniform Resource Identifier (URI) umleitet, bevor ein Verbindungsfehler auftritt. Der Standardwert ist 5. Der Wert 0 (null) verhindert Umleitungen generell.

Diese Option wird nur in der PSSession verwendet, wenn der AllowRedirection-Parameter im Befehl verwendet wird, mit dem die PSSession erstellt wird.

Erforderlich?

false

Position?

named

Standardwert

5

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-NoCompression

Deaktiviert die Paketkomprimierung in der PSSession. Durch die Komprimierung werden zwar mehr Prozessorzyklen verwendet, die Übertragung wird jedoch beschleunigt.

Erforderlich?

false

Position?

named

Standardwert

False

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-NoEncryption

Deaktiviert die Datenverschlüsselung.

Erforderlich?

false

Position?

named

Standardwert

False

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-NoMachineProfile

Verhindert das Laden des für den Benutzer gespeicherten Windows-Benutzerprofils. Die PSSession kann folglich schneller erstellt werden, benutzerdefinierte Registrierungseinstellungen, z. B. Umgebungsvariablen und Zertifikate, sind in der PSSession jedoch nicht verfügbar.

Erforderlich?

false

Position?

named

Standardwert

False

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-OpenTimeOut <int>

Legt fest, wie lange der Clientcomputer wartet, bis die Sitzungsverbindung hergestellt wird. Wenn das Intervall abläuft, führt der Befehl zum Herstellen der Verbindung zu einem Fehler. Geben Sie einen Wert in Millisekunden ein.

Der Standardwert ist 180000 (3 Minuten). Der Wert 0 (null) bedeutet, dass kein Timeout festgelegt ist und der Befehl unendlich fortgesetzt wird.

Erforderlich?

false

Position?

named

Standardwert

180000

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-OperationTimeOut <int>

Bestimmt die maximale Zeit, die für jeden Vorgang in der PSSession vorgesehen ist. Wenn das Intervall abläuft, tritt ein Fehler auf. Geben Sie einen Wert in Millisekunden ein.

Der Standardwert ist 180000 (3 Minuten). Der Wert 0 (null) bedeutet, dass kein Timeout festgelegt ist und der Vorgang unendlich fortgesetzt wird.

Erforderlich?

false

Position?

named

Standardwert

180000

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-ProxyAccessType <ProxyAccessType>

Legt fest, wie die Auflösung des Hostnamens durchgeführt wird. Gültige Werte sind "IEConfig", "WinHttpConfig", "AutoDetect", "NoProxyServer" und "None". Der Standardwert ist "None".

Informationen zu den Werten dieses Parameters finden Sie in der Beschreibung der System.Management.Automation.Remoting.ProxyAccessType-Enumeration in der MSDN Library (Microsoft Developer Network) unter "https://go.microsoft.com/fwlink/?LinkId=144756" (möglicherweise auf Englisch).

Erforderlich?

false

Position?

named

Standardwert

keine

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-ProxyAuthentication <AuthenticationMechanism>

Gibt die Authentifizierungsmethode an, die für die Proxyauflösung verwendet wird. Gültige Werte sind "Basic", "Digest" und "Negotiate". Der Standardwert ist "Negotiate".

Informationen zu den Werten dieses Parameters finden Sie in der Beschreibung der System.Management.Automation.Runspaces.AuthenticationMechanism-Enumeration in der MSDN Library (Microsoft Developer Network) unter "https://go.microsoft.com/fwlink/?LinkID=144382" (möglicherweise auf Englisch).

Erforderlich?

false

Position?

named

Standardwert

Negotiate

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-ProxyCredential <PSCredential>

Gibt die Anmeldeinformationen für die Proxyauthentifizierung an. Geben Sie eine Variable, die ein PSCredential-Objekt enthält, oder einen Befehl ein, mit dem ein PSCredential-Objekt abgerufen wird, z. B. Get-Credential. Wenn diese Option nicht festgelegt wird, werden keine Anmeldeinformationen angegeben.

Erforderlich?

false

Position?

named

Standardwert

keine

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-SkipCACheck

Gibt an, dass der Client bei einer Verbindung über HTTPS nicht überprüft, ob das Serverzertifikat von einer vertrauenswürdigen Zertifizierungsstelle signiert ist.

Verwenden Sie diese Option nur, wenn der Remotecomputer anderweitig vertrauenswürdig ist, z. B. wenn der Remotecomputer Teil eines Netzwerks ist, das physisch sicher und isoliert ist, oder wenn der Remotecomputer in einer WinRM-Konfiguration als vertrauenswürdiger Host aufgeführt wird.

Erforderlich?

false

Position?

named

Standardwert

False

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-SkipCNCheck

Gibt an, dass der allgemeine Name (CN) des Zertifikats für den Server nicht mit dem Hostnamen des Servers übereinstimmen muss. Diese Option wird nur in Remotevorgängen verwendet, die das HTTPS-Protokoll verwenden.

Verwenden Sie diese Option nur für vertrauenswürdige Computer.

Erforderlich?

false

Position?

named

Standardwert

False

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-SkipRevocationCheck

Überprüft nicht den Sperrstatus des Serverzertifikats.

Erforderlich?

false

Position?

named

Standardwert

False

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-UICulture <CultureInfo>

Gibt die UI-Kultur an, die für PSSession verwendet werden soll.

Geben Sie einen Kulturnamen im Format <Sprachcode2> - <Landes-/Regionalcode2>, z. B. "ja-JP", eine Variable, die ein CultureInfo-Objekt enthält, oder einen Befehl ein, mit dem ein CultureInfo-Objekt abgerufen wird, z. B. Get-Culture.

Der Standardwert ist $null, und die UI-Kultur, die beim Erstellen der PSSession im Betriebssystem festgelegt wird, wird in der PSSession verwendet.

Erforderlich?

false

Position?

named

Standardwert

Current UI culture

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-UseUTF16

Codiert die Anforderung im UTF16-Format und nicht im UTF8-Format.

Erforderlich?

false

Position?

named

Standardwert

False (UTF8 encoding)

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

<CommonParameters>

Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.

Eingaben und Ausgaben

Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.

Eingaben

None

Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden.

Ausgaben

System.Management.Automation.Remoting.PSSessionOption

Hinweise

Wenn der SessionOption-Parameter nicht in einem Befehl zur Erstellung einer PSSession verwendet wird, werden die Sitzungsoptionen durch die Eigenschaftenwerte der Einstellungsvariablen "$PSSessionOption" bestimmt, wenn diese festgelegt wurde. Weitere Informationen über die Einstellungsvariable "$PSSessionOption" finden Sie unter "about_Preference_Variables".

Beispiel 1

C:\PS>New-PSSessionOption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

Beschreibung
-----------
Mit diesem Befehl wird ein Sitzungsoptionsobjekt mit allen Standardwerten erstellt.






Beispiel 2

C:\PS>$pso = new-pssessionoption -Culture "fr-fr" -MaximumReceivedObjectSize 10MB

C:\PS> new-pssession -computerName Server01 -SessionOption $pso

Beschreibung
-----------
In diesem Beispiel wird gezeigt, wie Sie eine Sitzung mit einem Sitzungsoptionsobjekt konfigurieren.

Mit dem ersten Befehl wird ein neues Sitzungsoptionsobjekt erstellt und im Wert der Variablen "$pso" gespeichert.

Im zweiten Befehl wird mit dem Cmdlet "New-PSSession" eine PSSession auf dem Remotecomputer "Server01" erstellt. Der Befehl verwendet das Sitzungsoptionsobjekt im Wert der Variablen "$pso" als Wert des SessionOption-Parameters des Befehls.






Beispiel 3

C:\PS>enter-pssession -computername Server01 -sessionOption (new-pssessionoption -noEncryption -noCompression)

Beschreibung
-----------
Dieser Befehl verwendet das Cmdlet "Enter-PSSession", um eine interaktive Sitzung mit dem Computer "Server01" zu starten. Der Wert des SessionOption-Parameters ist ein New-PSSessionOption-Befehl mit dem NoEncryption-Schalterparameter und dem NoCompression-Schalterparameter.

Der Befehl "New-PSSessionOption" wird in Klammern eingeschlossen, um sicherzustellen, dass er vor dem Befehl "Enter-PSSession" ausgeführt wird.






Beispiel 4

C:\PS>$a = new-pssessionoption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

C:\PS> $a.UICulture = (get-UICulture)
C:\PS> $a.OpenTimeout = (new-timespan -minutes 4)
C:\PS> $a.MaximumConnectionRedirectionCount = 1

C:\PS> $a

MaximumConnectionRedirectionCount : 1
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         : en-US
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:04:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

Beschreibung
-----------
In diesem Beispiel wird veranschaulicht, wie das Sitzungsoptionsobjekt bearbeitet werden kann. Alle Eigenschaften verfügen über Lese-/Schreibwerte.

Verwenden Sie diese Methode, um ein Standardsitzungsobjekt für Ihr Unternehmen zu erstellen, und dann angepasste Versionen für bestimmte Verwendungszwecke anzulegen.






Beispiel 5

C:\PS>$PSSessionOption = New-PSSessionOption -OpenTimeOut 120000

Beschreibung
-----------
Mit diesem Befehl wird die Einstellungsvariable "$PSSessionOption" erstellt. 

Wenn die Einstellungsvariable "$PSSessionOption" in der Sitzung vorhanden ist, legt sie Standardwerte für Optionen in den PSSessions fest, die mit den Cmdlets "New-PSSession", "Enter-PSSession" und "Invoke-Command" erstellt werden.

Damit die Variable "$PSSessionOption" in allen Sitzungen zur Verfügung steht, fügen Sie sie der Windows PowerShell-Sitzung und dem Windows PowerShell-Profil hinzu.

Weitere Informationen über die Einstellungsvariable "$PSSessionOption" finden Sie unter "about_Preference_Variables". Weitere Informationen über Profile finden Sie unter "about_Profiles".






Beispiel 6

C:\PS>$skipCN = new-pssessionoption -SkipCNCheck

C:\PS> new-pssession -computername 171.09.21.207 -UseSSL -credential domain01\user01 -sessionOption $skipCN

Beschreibung
-----------
In diesem Beispiel wird gezeigt, wie ein SessionOption-Objekt verwendet wird, um die Anforderungen für eine Remotesitzungskonfiguration zu erfüllen.

Der erste Befehl verwendet das Cmdlet "New-PSSessionOption", um ein Sitzungsoptionsobjekt mit der SkipCNCheck-Eigenschaft zu erstellen. Der Befehl speichert das resultierende Sitzungsobjekt in der Variablen "$skipCN".

Der zweite Befehl verwendet das Cmdlet "New-PSSession", um eine neue PSSession auf dem Remotecomputer zu erstellen. Die Variable "$skipCNCheck" wird im Wert des SessionOption-Parameters verwendet. 

Da der Computer von seiner IP-Adresse identifiziert wird, stimmt der Wert des ComputerName-Parameters mit keinem der allgemeinen Namen in dem Zertifikat überein, das für Secure Sockets Layer (SSL) verwendet wird. Deshalb ist die SkipCNCheck-Option erforderlich.






Siehe auch




Inhaltsverzeichnis