Nega l'accesso alle configurazioni di sessione nel computer locale.

Sintassi

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

Descrizione

Il cmdlet Disable-PSSessionConfiguration impedisce a tutti gli utenti del computer di utilizzare la configurazione di sessione in una sessione. Si tratta di un cmdlet avanzato progettato per essere utilizzato da amministratori di sistema per gestire le configurazioni di sessione personalizzate degli utenti.

Il cmdlet Disable-PSSessionConfiguration aggiunge un'impostazione "deny all" al descrittore di sicurezza di una o più configurazioni di sessione registrate. Di conseguenza, è possibile annullare la registrazione, visualizzare e modificare le configurazioni, ma non utilizzarle in una sessione.

Senza parametri, Disable-PSSessionConfiguration disabilita la configurazione Microsoft.PowerShell, ovvero la configurazione predefinita utilizzata per le sessioni. A meno che l'utente non specifichi una configurazione diversa, gli utenti locali e remoti non sono autorizzati a creare sessioni che si connettano al computer.

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

Parametri

-Force

Elimina tutti i prompt dell'utente. Per impostazione predefinita, viene richiesto di confermare ogni operazione.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Name <string[]>

Specifica i nomi delle configurazioni di sessione da disabilitare. Immettere uno o più nomi di configurazione. È consentito l'utilizzo di caratteri jolly. È inoltre possibile reindirizzare una stringa che contiene un nome di configurazione o un oggetto configurazione di sessione a Disable-PSSessionConfiguration.

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

Obbligatorio?

false

Posizione?

1

Valore predefinito

Microsoft.PowerShell

Accettare input da pipeline?

true (ByValue, ByPropertyName)

Accettare caratteri jolly?

true

-Confirm

Chiede una conferma prima di eseguire il comando.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-WhatIf

Descrive ciò che accadrebbe se si eseguisse il comando senza eseguirlo realmente.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration, System.String

È possibile reindirizzare un oggetto configurazione di sessione o una stringa che contiene il nome di una configurazione di sessione a Disable-PSSessionConfiguration.

Output

Nessuno

Questo cmdlet non restituisce alcun oggetto.

Note

Per eseguire questo cmdlet in Windows Vista, Windows Server 2008 e nelle versioni successive di Windows, è necessario avviare Windows PowerShell con l'opzione "Esegui come amministratore".

Esempio 1

C:\PS>Disable-PSSessionConfiguration

Descrizione
-----------
Con questo comando viene disabilitata la configurazione di sessione Microsoft.PowerShell.






Esempio 2

C:\PS>disable-pssessionConfiguration -name *

Descrizione
-----------
Con questo comando vengono disabilitate tutte le configurazioni di sessione registrate nel computer.






Esempio 3

C:\PS>disable-pssessionConfiguration -name Microsoft* -force

Descrizione
-----------
Con questo comando vengono disabilitate tutte le configurazioni di sessione i cui nomi iniziano con "Microsoft". Il comando utilizza il parametro Force per eliminare tutti i prompt dell'utente dal comando.






Esempio 4

C:\PS>Get-PSSessionConfiguration -name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration

Descrizione
-----------
Con questo comando vengono disabilitate le configurazioni di sessione MaintenanceShell e AdminShell. 

Nel comando viene utilizzato un operatore pipeline (|) per inviare i risultati di un comando Get-PSSessionConfiguration a Disable-PSSessionConfiguration.






Esempio 5

C:\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

C:\PS> Disable-PSSessionConfiguration -name MaintenanceShell -force

C:\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

C:\PS> Set-PSSessionConfiguration -name MaintenanceShell -MaximumReceivedDataSizePerCommandMB 60

ParamName            ParamValue
---------            ----------
psmaximumreceived... 60

"Restart WinRM service"
WinRM service need to be restarted to make the changes effective. Do you want to run the command "restart-service winrm"?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y


C:\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_Troubl
eshooting Help topic.
    + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
    + FullyQualifiedErrorId : PSSessionOpenFailed

Descrizione
-----------
In questo esempio viene illustrato l'effetto della disabilitazione di una configurazione di sessione.

Con il primo comando vengono utilizzati i cmdlet Get-SessionConfiguration e Format-Table per visualizzare solo le proprietà Name e Permission degli oggetti configurazione di sessione. Questo formato tabella rende più semplice la visualizzazione dei valori degli oggetti. I risultati mostrano che ai membri del gruppo Administrators è consentito utilizzare le configurazioni di sessione.

Con il secondo comando si utilizza il cmdlet Disable-PSSessionConfiguration per disabilitare la configurazione di sessione MaintenanceShell. Il comando utilizza il parametro Force per eliminare tutti i prompt dell'utente.

Il terzo comando ripete il primo. I risultati mostrano che è ancora possibile ottenere l'oggetto che rappresenta la configurazione di sessione MaintenanceShell anche se l'accesso viene negato a tutti. La voce "AccessDenied" ha la precedenza su tutte le altre voci nel descrittore di sicurezza.

Con il quarto comando si utilizza il cmdlet Set-PSSessionConfiguration per aumentare l'impostazione MaximumDataSizePerCommandMB della configurazione di sessione MaintenanceShell a 60. I risultati mostrano che il comando ha avuto esito positivo anche se l'accesso alla configurazione viene negato a tutti.

Con il quinto comando si tenta di utilizzare la configurazione di sessione MaintenanceShell in una sessione. Vengono utilizzati il cmdlet New-PSSession per creare una nuova sessione e il parametro ConfigurationName per specificare la configurazione MaintenanceShell. I risultati mostrano che il comando New-PSSession ha esito negativo perché all'utente viene negato l'accesso alla configurazione.






Vedere anche




Argomenti della Guida