Disable-PSSessionConfiguration
Deaktiviert die Sitzungskonfigurationen auf dem lokalen Computer.
Syntax
Disable-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[-NoServiceRestart]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Disable-PSSessionConfiguration
Cmdlet deaktiviert Sitzungskonfigurationen auf dem lokalen Computer, wodurch verhindert wird, dass alle Benutzer die Sitzungskonfigurationen verwenden, um eine vom Benutzer verwaltete Sitzungen (PSSessions) auf dem lokalen Computer zu erstellen. Dies ist ein erweitertes Cmdlet für Systemadministratoren, die benutzerdefinierte Sitzungskonfigurationen für ihre Benutzer verwalten.
Ab PowerShell 3.0 legt das Disable-PSSessionConfiguration
Cmdlet die Einstellung "Aktiviert " der Sitzungskonfiguration (WSMan:\localhost\Plugins\<SessionConfiguration>\Enabled
) auf "False" fest.
In PowerShell 2.0 fügt das Disable-PSSessionConfiguration
Cmdlet dem Sicherheitsdeskriptor einer oder mehrerer registrierter Sitzungskonfigurationen einen Deny_All Eintrag hinzu.
Ohne Parameter Disable-PSSessionConfiguration
deaktiviert die Microsoft.PowerShell-Konfiguration , die Standardkonfiguration, die für Sitzungen verwendet wird. Wenn der Benutzer keine andere Konfiguration angibt, werden lokale und remote Benutzer effektiv daran gehindert, eine Sitzung zu erstellen, die eine Verbindung mit dem Computer herstellt.
Um alle Sitzungskonfigurationen auf dem Computer zu deaktivieren, verwenden Sie Disable-PSRemoting
.
Beispiele
Beispiel 1: Deaktivieren der Standardkonfiguration
In diesem Beispiel wird die Microsoft.PowerShell-Sitzungskonfiguration deaktiviert.
Disable-PSSessionConfiguration
Beispiel 2: Deaktivieren aller registrierten Sitzungskonfigurationen
In diesem Beispiel werden alle registrierten Sitzungskonfigurationen auf dem Computer deaktiviert.
Disable-PSSessionConfiguration -Name *
Beispiel 3: Deaktivieren von Sitzungskonfigurationen anhand des Namens
In diesem Beispiel werden alle Sitzungskonfigurationen mit Namen deaktiviert, die mit Microsoft
. Der Parameter Force unterdrückt alle Benutzeraufforderungen aus dem Cmdlet.
Disable-PSSessionConfiguration -Name Microsoft* -Force
Beispiel 4: Deaktivieren von Sitzungskonfigurationen mithilfe der Pipeline
In diesem Beispiel werden die MaintenanceShell - und AdminShell-Sitzungskonfigurationen deaktiviert. Der Pipelineoperator (|
) sendet die Ergebnisse einer Get-PSSessionConfiguration
an .Disable-PSSessionConfiguration
Get-PSSessionConfiguration -Name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration
Beispiel 5: Auswirkungen der Deaktivierung einer Sitzungskonfiguration
In diesem Beispiel werden die Berechtigungen vor und nach der Ausführung Disable-PSSessionConfiguration
sowie die Auswirkungen der Deaktivierung einer Sitzungskonfiguration veranschaulicht.
PS> Get-PSSessionConfiguration | Format-Table -Property Name, Permission -Auto
Name Permission
---- ----------
MaintenanceShell BUILTIN\Administrators AccessAllowed
microsoft.powershell BUILTIN\Administrators AccessAllowed
microsoft.powershell32 BUILTIN\Administrators AccessAllowed
PS> Disable-PSSessionConfiguration -Name MaintenanceShell -Force
PS> Get-PSSessionConfiguration | Format-Table -Property Name, Permission -Auto
Name Permission
---- ----------
MaintenanceShell Everyone AccessDenied, BUILTIN\Administrators AccessAllowed
microsoft.powershell BUILTIN\Administrators AccessAllowed
microsoft.powershell32 BUILTIN\Administrators AccessAllowed
PS> New-PSSession -ComputerName localhost -ConfigurationName MaintenanceShell
[localhost] Connecting to remote server failed with the following error message : Access is denied.
For more information, see the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
+ FullyQualifiedErrorId : PSSessionOpenFailed
Hinweis
Das Deaktivieren der Konfiguration verhindert nicht, dass Sie die Konfiguration mit dem Set-PSSessionConfiguration
Cmdlet ändern. Sie verhindert nur die Verwendung der Konfiguration.
Parameter
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Force
Erzwingt die Ausführung des Befehls ohne Aufforderung zur Bestätigung durch den Benutzer.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Name
Gibt ein Array von Namen von Sitzungskonfigurationen an, die deaktiviert werden sollen. Geben Sie einen oder mehrere Konfigurationsnamen ein. Platzhalterzeichen sind zulässig. Sie können auch eine Zeichenfolge senden, die einen Konfigurationsnamen oder ein Sitzungskonfigurationsobjekt enthält.Disable-PSSessionConfiguration
Wenn Sie diesen Parameter weglassen, Disable-PSSessionConfiguration
wird die Microsoft.PowerShell-Sitzungskonfiguration deaktiviert.
Typ: | String[] |
Position: | 0 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | True |
-NoServiceRestart
Wird verwendet, um den Neustart des WSMan-Diensts zu verhindern. Es ist nicht erforderlich, den Dienst neu zu starten, um die Konfiguration zu deaktivieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Typ: | SwitchParameter |
Aliase: | wi |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
Sie können ein Sitzungskonfigurationsobjekt an dieses Cmdlet weiterleiten.
Sie können eine Zeichenfolge mit dem Namen einer Sitzungskonfiguration an dieses Cmdlet weiterleiten.
Ausgaben
None
Dieses Cmdlet gibt keine Ausgabe zurück.
Hinweise
Zum Ausführen dieses Cmdlets müssen Sie PowerShell mithilfe der Option "Als Administrator ausführen" starten.