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