Disable-PSSessionConfiguration

Disabilita le configurazioni di sessione nel computer locale.

Sintassi

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

Descrizione

Questo cmdlet è disponibile solo nella piattaforma Windows.

Il Disable-PSSessionConfiguration cmdlet disabilita le configurazioni di sessione nel computer locale, impedendo a tutti gli utenti di usare le configurazioni di sessione per creare sessioni gestite dall'utente (PSSession) nel computer locale. Si tratta di un cmdlet avanzato progettato per essere usato dagli amministratori di sistema per gestire le configurazioni di sessione personalizzate per i propri utenti.

A partire da PowerShell 3.0, il Disable-PSSessionConfiguration cmdlet imposta l'impostazione Enabled della configurazione di sessione (WSMan:\localhost\Plugins\<SessionConfiguration>\Enabled) su False.

In PowerShell 2.0 il Disable-PSSessionConfiguration cmdlet aggiunge una voce Deny_All al descrittore di sicurezza di una o più configurazioni di sessione registrate.

Senza parametri, Disable-PSSessionConfiguration disabilita la configurazione di Microsoft.PowerShell , la configurazione predefinita usata per le sessioni. A meno che l'utente non specifichi una configurazione diversa, sia agli utenti locali che remoti viene impedito di creare sessioni che si connettono al computer.

Per disabilitare tutte le configurazioni di sessione nel computer, usare Disable-PSRemoting.

Esempio

Esempio 1: Disabilitare la configurazione predefinita

In questo esempio viene disabilitata la configurazione della sessione Di Microsoft.PowerShell .

Disable-PSSessionConfiguration

Esempio 2: Disabilitare tutte le configurazioni di sessione registrate

In questo esempio vengono disabilitate tutte le configurazioni di sessione registrate nel computer.

Disable-PSSessionConfiguration -Name *

Esempio 3: Disabilitare le configurazioni di sessione in base al nome

In questo esempio vengono disabilitate tutte le configurazioni di sessione con nomi che iniziano con Microsoft. Il parametro Force elimina tutti i prompt degli utenti dal cmdlet .

Disable-PSSessionConfiguration -Name Microsoft* -Force

Esempio 4: Disabilitare le configurazioni di sessione usando la pipeline

In questo esempio vengono disabilitate le configurazioni di sessione maintenanceShell e Amministrazione Shell. L'operatore pipeline (|) invia i risultati di un Get-PSSessionConfiguration oggetto a Disable-PSSessionConfiguration.

Get-PSSessionConfiguration -Name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration

Esempio 5: Effetti della disabilitazione di una configurazione di sessione

In questo esempio vengono illustrate le autorizzazioni prima e dopo l'esecuzione Disable-PSSessionConfiguration e l'effetto della disabilitazione di una configurazione di sessione.

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

Nota

La disabilitazione della configurazione non impedisce di modificare la configurazione usando il Set-PSSessionConfiguration cmdlet . Impedisce solo l'uso della configurazione.

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Forza l'esecuzione del comando senza chiedere conferma all'utente.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Specifica una matrice di nomi di configurazioni di sessione da disabilitare. Immettere uno o più nomi di configurazioni. I caratteri jolly sono consentiti. È anche possibile inviare tramite pipe una stringa contenente un nome di configurazione o un oggetto di configurazione della sessione a Disable-PSSessionConfiguration.

Se si omette questo parametro, Disable-PSSessionConfiguration disabilita la configurazione della sessione di Microsoft.PowerShell .

Type:String[]
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-NoServiceRestart

Usato per impedire il riavvio del servizio WSMan. Non è necessario riavviare il servizio per disabilitare la configurazione.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

È possibile inviare tramite pipe un oggetto di configurazione sessione a questo cmdlet.

String

È possibile inviare tramite pipe una stringa contenente il nome di una configurazione di sessione a questo cmdlet.

Output

None

Questo cmdlet non restituisce output.

Note

Questo cmdlet è disponibile solo nelle piattaforme Windows.

Per eseguire questo cmdlet, è necessario avviare PowerShell usando l'opzione Esegui come amministratore .