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 benutzerseitig verwaltete Sitzung (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 Cmdlet die Disable-PSSessionConfiguration
Einstellung Aktiviert der Sitzungskonfiguration (WSMan:\localhost\Plugins\<SessionConfiguration>\Enabled
) auf False fest.
In PowerShell 2.0 fügt das Cmdlet dem Disable-PSSessionConfiguration
Sicherheitsdeskriptor einer oder mehreren registrierten Sitzungskonfigurationen einen Deny_All Eintrag hinzu.
Deaktiviert ohne Parameter Disable-PSSessionConfiguration
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 nach Name
In diesem Beispiel werden alle Sitzungskonfigurationen mit Namen deaktiviert, die mit Microsoft beginnen. Der Force-Parameter unterdrückt alle Benutzereingabeaufforderungen 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 eines Get-PSSessionConfiguration
an Disable-PSSessionConfiguration
.
Get-PSSessionConfiguration -Name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration
Beispiel 5: Auswirkungen des Deaktivierens 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 hindert Sie nicht daran, die Konfiguration mithilfe des Cmdlets Set-PSSessionConfiguration
zu ändern. Es verhindert nur die Verwendung der Konfiguration.
Parameter
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Erzwingt die Ausführung des Befehls ohne Aufforderung zur Bestätigung durch den Benutzer.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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, die einen Konfigurationsnamen oder ein Sitzungskonfigurationsobjekt enthält, an übergeben Disable-PSSessionConfiguration
.
Wenn Sie diesen Parameter weglassen, Disable-PSSessionConfiguration
deaktiviert die Microsoft.PowerShell-Sitzungskonfiguration.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
Sie können ein Sitzungskonfigurationsobjekt oder eine Zeichenfolge, die den Namen einer Sitzungskonfiguration enthält, an dieses Cmdlet weiterleiten.
Ausgaben
None
Dieses Cmdlet gibt keine Objekte zurück.
Hinweise
Zum Ausführen dieses Cmdlets müssen Sie PowerShell mithilfe der Option Als Administrator ausführen starten.