Freigeben über


Get-PSSessionConfiguration

Ruft die registrierten Sitzungskonfigurationen auf dem Computer ab.

Syntax

Get-PSSessionConfiguration
   [[-Name] <String[]>]
   [-Force]
   [<CommonParameters>]

Beschreibung

Das Cmdlet Get-PSSessionConfiguration ruft die Sitzungskonfigurationen ab, die auf dem lokalen Computer registriert wurden. Dies ist ein erweitertes Cmdlet, das von Systemadministratoren zum Verwalten angepasster Sitzungskonfigurationen für ihre Benutzer verwendet werden soll.

Ab PowerShell 3.0 können Sie die Eigenschaften einer Sitzungskonfiguration mithilfe einer Sitzungskonfigurationsdatei (PSSC) definieren. Mit diesem Feature können Sie angepasste und eingeschränkte Sitzungen erstellen, ohne ein Computerprogramm zu schreiben. Weitere Informationen zu Sitzungskonfigurationsdateien finden Sie unter about_Session_Configuration_Files.

Ab PowerShell 3.0 wurden dem von Get-PSSessionConfiguration zurückgegebenen Sitzungskonfigurationsobjekt außerdem neue Hinweiseigenschaften hinzugefügt. Diese Eigenschaften erleichtern Benutzern und Sitzungskonfigurationsautoren das Untersuchen und Vergleichen von Sitzungskonfigurationen.

Verwenden Sie das Cmdlet Register-PSSessionConfiguration, um eine Sitzungskonfiguration zu erstellen und zu registrieren. Weitere Informationen zu Sitzungskonfigurationen finden Sie unter about_Session_Configurations.

Beispiele

Beispiel 1: Abrufen von Sitzungskonfigurationen auf dem lokalen Computer

Get-PSSessionConfiguration

Beispiel 2 : Abrufen der beiden Standardsitzungskonfigurationen

Der Befehl verwendet den Name Parameter von Get-PSSessionConfiguration, um nur die Sitzungskonfigurationen mit Namen abzurufen, die mit "Microsoft" beginnen.

Get-PSSessionConfiguration -Name Microsoft*

Name                      PSVersion  StartupScript        Permission
----                      ---------  -------------        ----------
microsoft.powershell      5.1                             BUILTIN\Administrators AccessAll...
microsoft.powershell32    5.1                             BUILTIN\Administrators AccessAll...

Beispiel 3 : Abrufen der Eigenschaften und Werte einer Sitzungskonfiguration

Dieses Beispiel zeigt die Eigenschaften und Eigenschaftswerte einer Sitzungskonfiguration, die mithilfe einer Sitzungskonfigurationsdatei erstellt wurde.

Get-PSSessionConfiguration -Name Full  | Format-List -Property *

Copyright                     : (c) 2011 User01. All rights reserved.
AliasDefinitions              : {System.Collections.Hashtable}
SessionType                   : Default
CompanyName                   : Unknown
GUID                          : 1e9cb265-dae0-4bd3-89a9-8338a47698a1
Author                        : User01
ExecutionPolicy               : Restricted
SchemaVersion                 : 1.0.0.0
LanguageMode                  : FullLanguage
Architecture                  : 64
Filename                      : %windir%\system32\pwrshplugin.dll
ResourceUri                   : http://schemas.microsoft.com/powershell/Full
MaxConcurrentCommandsPerShell : 1500
UseSharedProcess              : false
ProcessIdleTimeoutSec         : 0
xmlns                         : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers            : 10
lang                          : en-US
SupportsOptions               : true
ExactMatch                    : true
configfilepath                : C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Full_1e9cb265-dae0-4bd3-89a9-8338a47698a1.pssc
RunAsUser                     :
IdleTimeoutms                 : 7200000
PSVersion                     : 3.0
OutputBufferingMode           : Block
AutoRestart                   : false
MaxShells                     : 300
MaxMemoryPerShellMB           : 1024
MaxIdleTimeoutms              : 43200000
SDKVersion                    : 1
Name                          : Full
XmlRenderingType              : text
Capability                    : {Shell}
RunAsPassword                 :
MaxProcessesPerShell          : 25
Enabled                       : True
MaxShellsPerUser              : 30
Permission                    :

Im Beispiel wird das Cmdlet Get-PSSessionConfiguration verwendet, um die vollständige Sitzungskonfiguration abzurufen. Ein Pipelineoperator sendet die Vollständige Sitzungskonfiguration an das cmdlet Format-List. Der Parameter Property mit dem Wert * (alle) befiehlt Format-List, alle Eigenschaften und Werte des Objekts in einer Liste anzuzeigen.

Die Ausgabe enthält nützliche Informationen, einschließlich des Autors der Sitzungskonfiguration, des Sitzungstyps, des Sprachmodus und der Ausführungsrichtlinie von Sitzungen, die mit dieser Sitzungskonfiguration, Sitzungskontingenten und dem vollständigen Pfad zur Sitzungskonfigurationsdatei erstellt werden.

Diese Ansicht einer Sitzungskonfiguration wird für Sitzungen verwendet, die eine Sitzungskonfigurationsdatei enthalten. Weitere Informationen zu Sitzungskonfigurationsdateien finden Sie unter about_Session_Configuration_Files.

Beispiel 4 – Eine weitere Möglichkeit zum Betrachten der Sitzungskonfigurationen

In diesem Beispiel wird das Cmdlet Get-ChildItem (Alias dir) im WSMan:-Anbieterlaufwerk verwendet, um den Inhalt des Plug-In-Knotens anzuzeigen. Dies ist eine weitere Möglichkeit, die Sitzungskonfigurationen auf dem Computer zu betrachten.

dir wsman:\localhost\plugin

Type            Keys                                Name
----            ----                                ----
Container       {Name=Event Forwarding Plugin}      Event Forwarding Plugin
Container       {Name=Full}                         Full
Container       {Name=microsoft.powershell}         microsoft.powershell
Container       {Name=microsoft.powershell.workf... microsoft.powershell.workflow
Container       {Name=microsoft.powershell32}       microsoft.powershell32
Container       {Name=microsoft.ServerManager}      microsoft.ServerManager
Container       {Name=WMI Provider}                 WMI Provider

Der PlugIn--Knoten enthält ContainerElement- -Objekte (Microsoft.WSMan.Management.WSManConfigContainerElement), die die registrierten PowerShell-Sitzungskonfigurationen zusammen mit anderen Plug-Ins für WS-Management darstellen.

Beispiel 6: Anzeigen von Sitzungskonfigurationen auf einem Remotecomputer

In diesem Beispiel wird gezeigt, wie Sie den WSMan-Anbieter verwenden, um die Sitzungskonfigurationen auf einem Remotecomputer anzuzeigen. Diese Methode stellt nicht so viele Informationen bereit wie ein Get-PSSessionConfiguration-Befehl, aber der Benutzer muss kein Mitglied der Gruppe "Administratoren" sein, um dieses Cmdlet auszuführen.

Connect-WSMan -ComputerName Server01
dir WSMan:\Server01\Plugin

WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin

Type            Keys                                Name
----            ----                                ----
Container       {Name=Empty}                        Empty
Container       {Name=Event Forwarding Plugin}      Event Forwarding Plugin
Container       {Name=Full}                         Full
Container       {Name=microsoft.powershell}         microsoft.powershell
Container       {Name=microsoft.powershell.workf... microsoft.powershell.workflow
Container       {Name=microsoft.powershell32}       microsoft.powershell32
Container       {Name=microsoft.ServerManager}      microsoft.ServerManager
Container       {Name=NoLanguage}                   NoLanguage
Container       {Name=RestrictedLang}               RestrictedLang
Container       {Name=RRS}                          RRS
Container       {Name=SEL Plugin}                   SEL Plugin
Container       {Name=WithProfile}                  WithProfile
Container       {Name=WMI Provider}                 WMI Provider

Das cmdlet Connect-WSMan stellt eine Verbindung mit dem WinRM-Dienst auf dem Remotecomputer Server01 her. Das Get-ChildItem-Cmdlet (alias dir) des Laufwerks „WSMan:“ ruft die Elemente im Pfad Server01\Plugin ab. Die Ausgabe zeigt die Elemente im Plug-In-Verzeichnis auf dem Server01-Computer an. Die Elemente enthalten die Sitzungskonfigurationen, die eine Art von WSMan-Plug-In sind, sowie andere Arten von Plug-Ins auf dem Computer.

Beispiel 7 : Abrufen detaillierter Sitzungskonfigurationen von einem Remotecomputer

In diesem Beispiel wird gezeigt, wie Sie einen Get-PSSessionConfiguration Befehl auf einem Remotecomputer ausführen. Der Befehl erfordert, dass die CredSSP-Delegierung in den Clienteinstellungen auf dem lokalen Computer und in den Diensteinstellungen auf dem Remotecomputer aktiviert ist.

Um die Befehle in diesem Beispiel auszuführen, müssen Sie Mitglied der Gruppe "Administratoren" auf den lokalen und Remotecomputern sein, und Sie müssen PowerShell mit der Option "Als Administrator ausführen" starten.

Enable-WSManCredSSP -Delegate Server02
Connect-WSMan Server02
Set-Item WSMan:\Server02*\Service\Auth\CredSSP -Value $true
Invoke-Command -ScriptBlock {Get-PSSessionConfiguration} -ComputerName Server02 -Authentication CredSSP -Credential Domain01\Admin01

Name                      PSVersion  StartupScript        Permission                          PSComputerName
----                      ---------  -------------        ----------                          --------------
microsoft.powershell      5.1                             BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
microsoft.powershell32    5.1                             BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
MyX86Shell                5.1        c:\test\x86Shell.ps1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com

Das cmdlet Enable-WSManCredSSP aktiviert CredSSP delegierung auf Server01, dem lokalen Computer. Das Cmdlet Connect-WSMan stellt eine Verbindung mit dem Server02-Computer her. Diese Aktion fügt einen Knoten für Server02 zum WSMan:-Laufwerk auf dem lokalen Computer hinzu, sodass Sie die WS-Management-Einstellungen auf dem Server02-Computer anzeigen und ändern können. Das Cmdlet Set-Item ändert den Wert des -Elements CredSSP im Dienstknoten des Computers Server02 in True. Dadurch werden die Diensteinstellungen auf dem Remotecomputer konfiguriert. Das Cmdlet Invoke-Command führt den BefehlGet-PSSessionConfiguration auf dem Server02-Computer aus. Der Befehl verwendet den Parameter Credential und verwendet den Parameter Authentication mit dem Wert CredSSP. Die Ausgabe zeigt die Sitzungskonfigurationen auf dem Server02-Remotecomputer an.

Beispiel 8: Abrufen des Ressourcen-URI einer Sitzungskonfiguration

Dieses Beispiel eignet sich zum Festlegen des Werts der $PSSessionConfigurationName Einstellungsvariablen, die einen Ressourcen-URI verwendet.

(Get-PSSessionConfiguration -Name CustomShell).resourceURI

http://schemas.microsoft.com/powershell/microsoft.CustomShell

Die $PSSessionConfigurationName Variable gibt die Standardkonfiguration an, die beim Erstellen einer Sitzung verwendet wird. Diese Variable wird auf dem lokalen Computer festgelegt, gibt jedoch eine Konfiguration auf dem Remotecomputer an. Weitere Informationen zur $PSSessionConfiguration Variablen finden Sie unter about_Preference_Variables.

Parameter

-Force

Unterdrückt die Aufforderung, den WinRM-Dienst neu zu starten, wenn der Dienst noch nicht ausgeführt wird.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Name

Ruft nur die Sitzungskonfigurationen mit dem angegebenen Namen oder Namensmuster ab. Geben Sie einen oder mehrere Sitzungskonfigurationsnamen ein. Wildcards sind zulässig.

Typ:String[]
Position:0
Standardwert:All session configurations on the local computer
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:True

Eingaben

None

Sie können keine Objekte an dieses Cmdlet weiterleiten.

Ausgaben

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

Hinweise

  • Um dieses Cmdlet auszuführen, starten Sie PowerShell mit der Option Als Administrator ausführen.

  • Um die Sitzungskonfigurationen auf dem Computer anzuzeigen, müssen Sie Mitglied der Gruppe "Administratoren" auf dem Computer sein.

  • Zum Ausführen eines Get-PSSessionConfiguration Befehls auf einem Remotecomputer muss die Authentifizierung des Credential Security Service Provider (CredSSP) in den Clienteinstellungen auf dem lokalen Computer (mithilfe des Cmdlets Enable-WSManCredSSP) und in den Diensteinstellungen auf dem Remotecomputer aktiviert werden. Außerdem müssen Sie beim Einrichten der Remotesitzung den CredSSP- Wert des Authentication-Parameters verwenden. Andernfalls wird der Zugriff verweigert.

  • Die Notizeigenschaften des Objekts, das Get-PSSessionConfiguration zurückgibt, werden nur dann für das Objekt angezeigt, wenn sie einen Wert aufweisen. Nur Sitzungskonfigurationen, die mithilfe einer Sitzungskonfigurationsdatei erstellt wurden, weisen alle definierten Eigenschaften auf.

  • Die Eigenschaften eines Sitzungskonfigurationsobjekts variieren je nach den für die Sitzungskonfiguration festgelegten Optionen und den Werten dieser Optionen. Außerdem verfügen Sitzungskonfigurationen, die eine Sitzungskonfigurationsdatei verwenden, über zusätzliche Eigenschaften.

  • Sie können Befehle im WSMan:-Laufwerk verwenden, um die Eigenschaften von Sitzungskonfigurationen zu ändern. Sie können jedoch das Laufwerk „WSMan:“ in PowerShell 2.0 nicht verwenden, um Sitzungskonfigurationseigenschaften zu ändern, die in PowerShell 3.0 eingeführt werden, etwa OutputBufferingMode. PowerShell 2.0-Befehle generieren keinen Fehler, sind aber ineffektiv. Um in PowerShell 3.0 eingeführte Eigenschaften zu ändern, verwenden Sie das Laufwerk „WSMan:“ in PowerShell 3.0.