Get-PSSessionConfiguration

Ruft die registrierten Sitzungskonfigurationen auf dem Computer ab.

Syntax

Default (Standard)

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

Beschreibung

Das Get-PSSessionConfiguration Cmdlet 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 zurückgegebenen Sitzungskonfigurationsobjekt Get-PSSessionConfiguration neue Notizeigenschaften hinzugefügt. Diese Eigenschaften erleichtern Benutzern und Sitzungskonfigurationsautoren das Untersuchen und Vergleichen von Sitzungskonfigurationen.

Verwenden Sie das Register-PSSessionConfiguration Cmdlet, 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 Parameter Name 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 Get-PSSessionConfiguration Cmdlet verwendet, um die vollständige Sitzungskonfiguration abzurufen. Ein Pipelineoperator sendet die Vollständige Sitzungskonfiguration an das Format-List Cmdlet. Der Property-Parameter mit dem Wert ( * alle) weist Format-List darauf hin, dass alle Eigenschaften und Werte des Objekts in einer Liste angezeigt werden.

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 Get-ChildItem Cmdlet (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 Knoten PlugIn enthält ContainerElementobjekte (Microsoft). WSMan.Management.WSManConfigContainerElement), das die registrierten PowerShell-Sitzungskonfigurationen zusammen mit anderen Plug-Ins für WS-Management darstellt.

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 wie einen Get-PSSessionConfiguration Befehl bereit, 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 Connect-WSMan Cmdlet stellt eine Verbindung mit dem WinRM-Dienst auf dem Remotecomputer Server01 her. Das Get-ChildItem Cmdlet (Alias dir) des WSMan:-Laufwerks ruft die Elemente im Server01\Plugin-Pfad 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 Enable-WSManCredSSP Cmdlet aktiviert die CredSSP-Delegierung auf Server01, dem lokalen Computer. Das Connect-WSMan Cmdlet stellt eine Verbindung mit dem Server02-Computer bereit. Diese Aktion fügt dem WSMan einen Knoten für Server02 hinzu: Laufwerk auf dem lokalen Computer, sodass Sie die WS-Management Einstellungen auf dem Server02-Computer anzeigen und ändern können. Das Set-Item Cmdlet ändert den Wert des CredSSP-Elements im Dienstknoten des Servers02-Computers in "True". Dadurch werden die Diensteinstellungen auf dem Remotecomputer konfiguriert. Das Invoke-Command Cmdlet führt denGet-PSSessionConfiguration Befehl auf dem Server02-Computer aus. Der Befehl verwendet den Parameter "Credential " und verwendet den Authentifizierungsparameter 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 Variable $PSSessionConfiguration 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.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Name

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

Parametereigenschaften

Typ:

String[]

Standardwert:All session configurations on the local computer
Unterstützt Platzhalter:True
Nicht anzeigen:False

Parametersätze

(All)
Position:0
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

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.

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

  • Die Notizeigenschaften des Zurückgegebenen Objekts werden nur angezeigt, Get-PSSessionConfiguration 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 das WSMan:-Laufwerk in PowerShell 2.0 jedoch nicht verwenden, um Sitzungskonfigurationseigenschaften zu ändern, die in PowerShell 3.0 eingeführt werden, z. B. OutputBufferingMode. PowerShell 2.0-Befehle generieren keinen Fehler, sind aber ineffektiv. Um in PowerShell 3.0 eingeführte Eigenschaften zu ändern, verwenden Sie das WSMan:-Laufwerk in PowerShell 3.0.