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 AdminShell . 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.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Force
Forza l'esecuzione del comando senza chiedere conferma all'utente.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | 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 .
Tipo: | String[] |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | True |
-NoServiceRestart
Usato per impedire il riavvio del servizio WSMan. Non è necessario riavviare il servizio per disabilitare la configurazione.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
È possibile inviare tramite pipe un oggetto di configurazione sessione a questo cmdlet.
È 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 .