Get-PSSessionConfiguration
Hiermee haalt u de geregistreerde sessieconfiguraties op de computer op.
Syntaxis
Get-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[<CommonParameters>]
Description
De Get-PSSessionConfiguration
cmdlet haalt de sessieconfiguraties op die zijn geregistreerd op de lokale computer. Dit is een geavanceerde cmdlet die is ontworpen om te worden gebruikt door systeembeheerders voor het beheren van aangepaste sessieconfiguraties voor hun gebruikers.
Vanaf PowerShell 3.0 kunt u de eigenschappen van een sessieconfiguratie definiëren met behulp van een sessieconfiguratiebestand (.pssc). Met deze functie kunt u aangepaste en beperkte sessies maken zonder een computerprogramma te schrijven. Zie about_Session_Configuration_Filesvoor meer informatie over sessieconfiguratiebestanden.
Vanaf PowerShell 3.0 zijn er ook nieuwe notitieeigenschappen toegevoegd aan het sessieconfiguratieobject dat Get-PSSessionConfiguration
retourneert. Deze eigenschappen maken het eenvoudiger voor gebruikers en auteurs van sessieconfiguraties om sessieconfiguraties te onderzoeken en te vergelijken.
Gebruik de cmdlet Register-PSSessionConfiguration
om een sessieconfiguratie te maken en te registreren.
Zie about_Session_Configurationsvoor meer informatie over sessieconfiguraties.
Voorbeelden
Voorbeeld 1: sessieconfiguraties ophalen op de lokale computer
Get-PSSessionConfiguration
Voorbeeld 2: de twee standaardsessieconfiguraties ophalen
De opdracht maakt gebruik van de parameter
Get-PSSessionConfiguration -Name Microsoft*
Name PSVersion StartupScript Permission
---- --------- ------------- ----------
microsoft.powershell 5.1 BUILTIN\Administrators AccessAll...
microsoft.powershell32 5.1 BUILTIN\Administrators AccessAll...
Voorbeeld 3: de eigenschappen en waarden van een sessieconfiguratie ophalen
In dit voorbeeld ziet u de eigenschappen en eigenschapswaarden van een sessieconfiguratie die is gemaakt met behulp van een sessieconfiguratiebestand.
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 :
In het voorbeeld wordt de Get-PSSessionConfiguration
-cmdlet gebruikt om de volledige sessieconfiguratie op te halen. Een pijplijnoperator verzendt de configuratie van de volledige sessie naar de Format-List
-cmdlet. De eigenschap parameter met een waarde van *
(alle) leidt Format-List
om alle eigenschappen en waarden van het object in een lijst weer te geven.
De uitvoer bevat nuttige informatie, waaronder de auteur van de sessieconfiguratie, het sessietype, de taalmodus en het uitvoeringsbeleid van sessies die zijn gemaakt met deze sessieconfiguratie, sessiequota en het volledige pad naar het sessieconfiguratiebestand.
Deze weergave van een sessieconfiguratie wordt gebruikt voor sessies die een sessieconfiguratiebestand bevatten. Zie about_Session_Configuration_Filesvoor meer informatie over sessieconfiguratiebestanden.
Voorbeeld 4: een andere manier om de sessieconfiguraties te bekijken
In dit voorbeeld wordt de cmdlet Get-ChildItem
(alias dir
) gebruikt in het WSMan: providerstation om de inhoud van het knooppunt Invoegtoepassing te bekijken. Dit is een andere manier om de sessieconfiguraties op de computer te bekijken.
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
Het knooppunt PlugIn bevat ContainerElement-objecten (Microsoft.WSMan.Management.WSManConfigContainerElement) die de geregistreerde PowerShell-sessieconfiguraties vertegenwoordigen, samen met andere invoegtoepassingen voor WS-Management.
Voorbeeld 6: sessieconfiguraties weergeven op een externe computer
In dit voorbeeld ziet u hoe u de WSMan-provider gebruikt om de sessieconfiguraties op een externe computer weer te geven. Deze methode biedt niet zoveel informatie als een Get-PSSessionConfiguration
opdracht, maar de gebruiker hoeft geen lid te zijn van de groep Administrators om deze cmdlet uit te voeren.
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
De Connect-WSMan
cmdlet maakt verbinding met de WinRM-service op de externe Server01-computer. De Get-ChildItem
cmdlet (alias dir
) van de WSMan: station haalt de items op in het Server01\Plugin pad. De uitvoer toont de items in de map Plugin op de Server01-computer. De items omvatten de sessieconfiguraties, die een type WSMan-invoegtoepassing zijn, samen met andere typen invoegtoepassingen op de computer.
Voorbeeld 7: gedetailleerde sessieconfiguraties ophalen van een externe computer
In dit voorbeeld ziet u hoe u een Get-PSSessionConfiguration
opdracht uitvoert op een externe computer. De opdracht vereist dat CredSSP-delegatie is ingeschakeld in de clientinstellingen op de lokale computer en in de service-instellingen op de externe computer.
Als u de opdrachten in dit voorbeeld wilt uitvoeren, moet u lid zijn van de groep Administrators op de lokale en externe computers en moet u PowerShell starten met de optie Als administrator uitvoeren als 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
Met de cmdlet Enable-WSManCredSSP
kunt u CredSSP delegering op Server01, de lokale computer. De Connect-WSMan
cmdlet maakt verbinding met server02-computer. Met deze actie wordt een knooppunt voor Server02 toegevoegd aan de WSMan: station op de lokale computer, zodat u de WS-Management-instellingen op de Server02-computer kunt bekijken en wijzigen. De Set-Item
-cmdlet wijzigt de waarde van het item CredSSP in het serviceknooppunt van de Server02-computer in True. Hiermee configureert u de service-instellingen op de externe computer. De cmdlet Invoke-Command
voert de opdrachtGet-PSSessionConfiguration
uit op de Server02-computer. De opdracht maakt gebruik van de parameter Credential en gebruikt de parameter Authentication met een waarde van CredSSP-. De uitvoer toont de sessieconfiguraties op de externe Server02-computer.
Voorbeeld 8: de resource-URI van een sessieconfiguratie ophalen
Dit voorbeeld is handig voor het instellen van de waarde van de $PSSessionConfigurationName
voorkeursvariabele, die een resource-URI gebruikt.
(Get-PSSessionConfiguration -Name CustomShell).resourceURI
http://schemas.microsoft.com/powershell/microsoft.CustomShell
De $PSSessionConfigurationName
-variabele geeft de standaardconfiguratie op die wordt gebruikt bij het maken van een sessie. Deze variabele is ingesteld op de lokale computer, maar hiermee wordt een configuratie op de externe computer opgegeven. Zie about_Preference_Variablesvoor meer informatie over de variabele $PSSessionConfiguration
.
Parameters
-Force
Onderdrukt de prompt om de WinRM-service opnieuw te starten als de service nog niet wordt uitgevoerd.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Name
Hiermee worden alleen de sessieconfiguraties met het opgegeven naam- of naampatroon ophaalt. Voer een of meer sessieconfiguratienamen in. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | 0 |
Default value: | All session configurations on the local computer |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
Invoerwaarden
None
U kunt geen objecten doorsluisen naar deze cmdlet.
Uitvoerwaarden
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
Notities
Als u deze cmdlet wilt uitvoeren, start u PowerShell met de optie Als administrator uitvoeren.
Als u de sessieconfiguraties op de computer wilt weergeven, moet u lid zijn van de groep Administrators op de computer.
Als u een
Get-PSSessionConfiguration
opdracht wilt uitvoeren op een externe computer, moet credSSP-verificatie (Credential Security Service Provider) zijn ingeschakeld in de clientinstellingen op de lokale computer (met behulp van de cmdletEnable-WSManCredSSP
) en in de service-instellingen op de externe computer. U moet ook de CredSSP--waarde van de parameter Authentication gebruiken bij het maken van de externe sessie. Anders wordt de toegang geweigerd.De opmerkingseigenschappen van het object dat
Get-PSSessionConfiguration
retourneert, worden alleen weergegeven op het object wanneer ze een waarde hebben. Alleen sessieconfiguraties die zijn gemaakt met behulp van een sessieconfiguratiebestand, hebben alle gedefinieerde eigenschappen.De eigenschappen van een sessieconfiguratieobject variëren met de opties die zijn ingesteld voor de sessieconfiguratie en de waarden van deze opties. Daarnaast hebben sessieconfiguraties die gebruikmaken van een sessieconfiguratiebestand aanvullende eigenschappen.
U kunt opdrachten in de WSMan: station gebruiken om de eigenschappen van sessieconfiguraties te wijzigen. U kunt het WSMan-station echter niet gebruiken in PowerShell 2.0 om de eigenschappen van de sessieconfiguratie te wijzigen die zijn geïntroduceerd in PowerShell 3.0, zoals OutputBufferingMode. PowerShell 2.0-opdrachten genereren geen fout, maar ze zijn ineffectief. Als u eigenschappen wilt wijzigen die zijn geïntroduceerd in PowerShell 3.0, gebruikt u het WSMan:-station in PowerShell 3.0.
Verwante koppelingen
- Disable-PSSessionConfiguration
- Enable-PSSessionConfiguration
- Get-PSSessionConfiguration
- New-PSSessionConfigurationFile
- New-PSSessionOption
- Register-PSSessionConfiguration
- Set-PSSessionConfiguration
- Test-PSSessionConfigurationFile
- Unregister-PSSessionConfiguration
- WSMan-provider
- about_Session_Configurations
- about_Session_Configuration_Files