Get-PSSessionConfiguration
Pobiera konfiguracje zarejestrowanej sesji na komputerze.
Składnia
Get-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[<CommonParameters>]
Opis
Polecenie cmdlet Get-PSSessionConfiguration
pobiera konfiguracje sesji, które zostały zarejestrowane na komputerze lokalnym. Jest to zaawansowane polecenie cmdlet przeznaczone do użycia przez administratorów systemu w celu zarządzania niestandardowymi konfiguracjami sesji dla użytkowników.
Począwszy od programu PowerShell 3.0, można zdefiniować właściwości konfiguracji sesji przy użyciu pliku konfiguracji sesji (pssc). Ta funkcja umożliwia tworzenie dostosowanych i ograniczonych sesji bez konieczności pisania programu komputerowego. Aby uzyskać więcej informacji na temat plików konfiguracji sesji, zobacz about_Session_Configuration_Files.
Ponadto, począwszy od programu PowerShell 3.0, nowe właściwości notatek zostały dodane do obiektu konfiguracji sesji, który Get-PSSessionConfiguration
zwraca. Te właściwości ułatwiają użytkownikom i autorom konfiguracji sesji analizowanie i porównywanie konfiguracji sesji.
Aby utworzyć i zarejestrować konfigurację sesji, użyj polecenia cmdlet Register-PSSessionConfiguration
.
Aby uzyskać więcej informacji na temat konfiguracji sesji, zobacz about_Session_Configurations.
Przykłady
Przykład 1 — pobieranie konfiguracji sesji na komputerze lokalnym
Get-PSSessionConfiguration
Przykład 2 — pobieranie dwóch domyślnych konfiguracji sesji
Polecenie używa parametru NazwaGet-PSSessionConfiguration
, aby uzyskać tylko konfiguracje sesji z nazwami rozpoczynającymi się od "Microsoft".
Get-PSSessionConfiguration -Name Microsoft*
Name PSVersion StartupScript Permission
---- --------- ------------- ----------
microsoft.powershell 5.1 BUILTIN\Administrators AccessAll...
microsoft.powershell32 5.1 BUILTIN\Administrators AccessAll...
Przykład 3 — pobieranie właściwości i wartości konfiguracji sesji
W tym przykładzie przedstawiono właściwości i wartości właściwości konfiguracji sesji utworzonej przy użyciu pliku konfiguracji sesji.
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 :
W przykładzie użyto polecenia cmdlet Get-PSSessionConfiguration
w celu uzyskania pełnej konfiguracji sesji. Operator potoku wysyła konfigurację pełnej sesji do polecenia cmdlet Format-List
. Parametr właściwości z wartością *
(wszystkie) kieruje Format-List
do wyświetlenia wszystkich właściwości i wartości obiektu na liście.
Dane wyjściowe zawierają przydatne informacje, w tym autora konfiguracji sesji, typ sesji, tryb językowy i zasady wykonywania sesji, które są tworzone przy użyciu tej konfiguracji sesji, przydziałów sesji i pełnej ścieżki do pliku konfiguracji sesji.
Ten widok konfiguracji sesji jest używany w przypadku sesji zawierających plik konfiguracji sesji. Aby uzyskać więcej informacji na temat plików konfiguracji sesji, zobacz about_Session_Configuration_Files.
Przykład 4 — inny sposób przyjrzenia się konfiguracjom sesji
W tym przykładzie użyto polecenia cmdlet Get-ChildItem
(alias dir
) na dysku dostawcy WSMan: w celu przyjrzenia się zawartości węzła wtyczki. Jest to inny sposób na przyjrzenie się konfiguracji sesji na komputerze.
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
Węzeł PlugIn zawiera obiekty ContainerElement (Microsoft.WSMan.Management.WSManConfigContainerElement), które reprezentują zarejestrowane konfiguracje sesji programu PowerShell wraz z innymi wtyczkami dla usługi WS-Management.
Przykład 6 — wyświetlanie konfiguracji sesji na komputerze zdalnym
W tym przykładzie pokazano, jak używać dostawcy WSMan do wyświetlania konfiguracji sesji na komputerze zdalnym. Ta metoda nie dostarcza tak wielu informacji jak polecenie Get-PSSessionConfiguration
, ale użytkownik nie musi być członkiem grupy Administratorzy, aby uruchomić ten cmdlet.
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
Polecenie cmdlet Connect-WSMan
nawiązuje połączenie z usługą WinRM na komputerze zdalnym Server01. Polecenie cmdlet Get-ChildItem
(alias dir
) dysku WSMan pobiera elementy w ścieżce Server01\Plugin. Wyjście pokazuje elementy w katalogu Plugin na komputerze Server01. Elementy obejmują konfiguracje sesji, które są typem wtyczki WSMan, wraz z innymi typami wtyczek na komputerze.
Przykład 7 — uzyskiwanie szczegółowych konfiguracji sesji z komputera zdalnego
W tym przykładzie pokazano, jak uruchomić polecenie Get-PSSessionConfiguration
na komputerze zdalnym. Polecenie wymaga włączenia delegowania CredSSP w ustawieniach klienta na komputerze lokalnym i w ustawieniach usługi na komputerze zdalnym.
Aby uruchomić polecenia w tym przykładzie, musisz być członkiem grupy Administratorzy na komputerach lokalnych i zdalnych i musisz uruchomić program PowerShell z opcją Uruchom jako administrator.
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
Polecenie cmdlet Enable-WSManCredSSP
umożliwia delegowanie CredSSP na komputerze lokalnym, serwerze Server01. Polecenie cmdlet Connect-WSMan
nawiązuje połączenie z komputerem Server02. Ta akcja powoduje dodanie węzła server02 do dysku WSMan: na komputerze lokalnym, co umożliwia wyświetlanie i zmienianie ustawień WS-Management na komputerze Server02. Polecenie cmdlet Set-Item
zmienia wartość elementu CredSSP w węźle Serwis komputera Server02 na True. Spowoduje to skonfigurowanie ustawień usługi na komputerze zdalnym. Polecenie cmdlet Invoke-Command
uruchamia polecenieGet-PSSessionConfiguration
na komputerze Server02. Polecenie używa parametru poświadczenia oraz parametru uwierzytelniania z wartością CredSSP. Dane wyjściowe przedstawiają konfiguracje sesji na komputerze zdalnym Server02.
Przykład 8 — pobieranie URI zasobu konfiguracji sesji
Ten przykład jest przydatny do ustawiania wartości zmiennej preferencji $PSSessionConfigurationName
, która przyjmuje identyfikator URI zasobu.
(Get-PSSessionConfiguration -Name CustomShell).resourceURI
http://schemas.microsoft.com/powershell/microsoft.CustomShell
Zmienna $PSSessionConfigurationName
określa domyślną konfigurację używaną podczas tworzenia sesji. Ta zmienna jest ustawiana na komputerze lokalnym, ale określa konfigurację na komputerze zdalnym. Aby uzyskać więcej informacji na temat zmiennej $PSSessionConfiguration
, zobacz about_Preference_Variables.
Parametry
-Force
Pomija monit o ponowne uruchomienie usługi WinRM, jeśli usługa nie jest jeszcze uruchomiona.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Name
Pobiera tylko konfiguracje sesji z określoną nazwą lub wzorcem nazwy. Wprowadź co najmniej jedną nazwę konfiguracji sesji. Dozwolone są symbole wieloznaczne.
Typ: | String[] |
Position: | 0 |
Domyślna wartość: | All session configurations on the local computer |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | True |
Dane wejściowe
None
Nie można przekazywać obiektów do tego polecenia cmdlet.
Dane wyjściowe
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
Uwagi
Aby uruchomić to polecenie cmdlet, uruchom program PowerShell przy użyciu opcji Uruchom jako administrator.
Aby wyświetlić konfiguracje sesji na komputerze, musisz być członkiem grupy Administratorzy na komputerze.
Aby uruchomić polecenie
Get-PSSessionConfiguration
na komputerze zdalnym, należy włączyć uwierzytelnianie dostawcy usług zabezpieczeń poświadczeń (CredSSP) w ustawieniach klienta na komputerze lokalnym (przy użyciu polecenia cmdletEnable-WSManCredSSP
) i w ustawieniach usługi na komputerze zdalnym. Podczas ustanawiania sesji zdalnej należy także użyć wartości CredSSP parametru Authentication. W przeciwnym razie odmowa dostępu.Właściwości notatki obiektu, który
Get-PSSessionConfiguration
zwraca, są wyświetlane w obiekcie tylko wtedy, gdy mają wartość. Tylko konfiguracje sesji utworzone przy użyciu pliku konfiguracji sesji mają wszystkie zdefiniowane właściwości.Właściwości obiektu konfiguracji sesji różnią się w zależności od opcji ustawionych dla konfiguracji sesji i wartości tych opcji. Ponadto konfiguracje sesji korzystające z pliku konfiguracji sesji mają dodatkowe właściwości.
Można użyć poleceń w programie WSMan:, aby zmienić właściwości konfiguracji sesji. Nie można jednak użyć napędu WSMan: w PowerShell 2.0, aby zmienić właściwości konfiguracji sesji wprowadzone w PowerShell 3.0, takie jak OutputBufferingMode. Polecenia programu PowerShell 2.0 nie generują błędu, ale są nieskuteczne. Aby zmienić właściwości wprowadzone w programie PowerShell 3.0, użyj programu WSMan: dysku w programie PowerShell 3.0.
Linki powiązane
- Disable-PSSessionConfiguration
- Enable-PSSessionConfiguration
- Get-PSSessionConfiguration
- New-PSSessionConfigurationFile
- New-PSSessionOption
- Register-PSSessionConfiguration
- Set-PSSessionConfiguration
- Test-PSSessionConfigurationFile
- Unregister-PSSessionConfiguration
- Dostawca programu WSMan
- o_Konfiguracjach_Sesji
- o_Plikach_Konfiguracji_Sesji