Disable-PSSessionConfiguration

Deaktiviert die Sitzungskonfigurationen auf dem lokalen Computer.

Syntax

Disable-PSSessionConfiguration
       [[-Name] <String[]>]
       [-Force]
       [-NoServiceRestart]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Beschreibung

Dieses Cmdlet ist nur auf der Windows-Plattform verfügbar.

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.

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 senden, die einen Konfigurationsnamen oder ein Sitzungskonfigurationsobjekt enthält.Disable-PSSessionConfiguration

Wenn Sie diesen Parameter weglassen, Disable-PSSessionConfiguration wird die Microsoft.PowerShell-Sitzungskonfiguration deaktiviert.

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 an dieses Cmdlet weiterleiten.

String

Sie können eine Zeichenfolge mit dem Namen einer Sitzungskonfiguration an dieses Cmdlet weiterleiten.

Ausgaben

None

Dieses Cmdlet gibt keine Ausgabe zurück.

Hinweise

Dieses Cmdlet ist nur auf Windows-Plattformen verfügbar.

Zum Ausführen dieses Cmdlets müssen Sie PowerShell mithilfe der Option "Als Administrator ausführen" starten.