Refuse l'accès aux configurations de session sur l'ordinateur local.

Syntaxe

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

Description

L'applet de commande Disable-PSSessionConfiguration empêche tous les utilisateurs de l'ordinateur d'employer la configuration de session dans une session. Il s'agit d'une applet de commande avancée, conçue pour être employée par les administrateurs système pour la gestion des configurations de session personnalisées des utilisateurs.

L'applet de commande Disable-PSSessionConfiguration ajoute un paramètre « Tout refuser » au descripteur de sécurité d'une ou de plusieurs configurations de session inscrites. Par conséquent, vous pouvez annuler l'inscription des configurations, les afficher et les modifier, mais vous ne pouvez pas les utiliser dans une session.

Sans paramètres, Disable-PSSessionConfiguration désactive la configuration Microsoft.PowerShell, qui est la configuration par défaut utilisée pour les sessions. À moins que l'utilisateur ne spécifie une autre configuration, les utilisateurs locaux et distants ne peuvent pas créer de sessions se connectant à l'ordinateur.

Pour désactiver toutes les configurations de session sur l'ordinateur, utilisez Disable-PSRemoting.

Paramètres

-Force

Supprime toutes les invites utilisateur. Par défaut, vous êtes invité à confirmer chaque opération.

Obligatoire ?

false

Position ?

named

Valeur par défaut

False

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Name <string[]>

Spécifie les noms des configurations de session à désactiver. Entrez un ou plusieurs noms de configuration. Les caractères génériques sont autorisés. Vous pouvez également diriger une chaîne contenant un nom de configuration ou un objet de configuration de session vers Disable-PSSessionConfiguration.

Si vous omettez ce paramètre, Disable-PSSessionConfiguration désactive la configuration de session Microsoft.PowerShell.

Obligatoire ?

false

Position ?

1

Valeur par défaut

Microsoft.PowerShell

Accepter l'entrée de pipeline ?

true (ByValue, ByPropertyName)

Accepter les caractères génériques ?

true

-Confirmer

Vous invite à confirmer l'exécution de la commande.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-WhatIf

Décrit le résultat que vous obtiendriez en exécutant la commande, sans réellement l'exécuter.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

<CommonParameters>

Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.

Entrées et sorties

Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.

Entrées

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

Vous pouvez diriger un objet de configuration de session ou une chaîne contenant le nom d'une configuration de session vers Disable-PSSessionConfiguration.

Sorties

Aucun

Cette applet de commande ne retourne pas d'objets.

Remarques

Pour exécuter cette applet de commande sur Windows Vista, Windows Server 2008 et les versions ultérieures de Windows, vous devez démarrer Windows PowerShell avec l'option Exécuter en tant qu'administrateur.

Exemple 1

C:\PS>Disable-PSSessionConfiguration

Description
-----------
Cette commande désactive la configuration de session Microsoft.PowerShell.






Exemple 2

C:\PS>disable-pssessionConfiguration -name *

Description
-----------
Cette commande désactive toutes les configurations de session inscrites sur l'ordinateur.






Exemple 3

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

Description
-----------
Cette commande désactive toutes les configurations de session dont le nom commence par « Microsoft ». Elle utilise le paramètre Force pour supprimer toutes les invites utilisateur de la commande.






Exemple 4

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

Description
-----------
Cette commande désactive les configurations de session MaintenanceShell et AdminShell. 

Elle utilise un opérateur de pipeline (|) pour envoyer les résultats d'une commande Get-PSSessionConfiguration à Disable-PSSessionConfiguration.






Exemple 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

Description
-----------
Cet exemple montre l'effet de la désactivation d'une configuration de session.

La première commande utilise les applets de commande Get-SessionConfiguration et Format-Table pour afficher uniquement les propriétés Name et Permission des objets de configuration de session. Ce format de table simplifie la lecture des valeurs des objets. Les résultats indiquent que les membres du groupe Administrateurs sont autorisés à utiliser les configurations de session.

La deuxième commande fait appel à l'applet de commande Disable-PSSessionConfiguration pour désactiver la configuration de session MaintenanceShell. Elle utilise le paramètre Force pour supprimer toutes les invites utilisateur.

La troisième commande répète la première. Les résultats indiquent que vous pouvez toujours obtenir l'objet représentant la configuration de session MaintenanceShell bien qu'aucun utilisateur ne soit autorisé à y accéder. L'entrée « AccessDenied » est prioritaire sur toutes les autres entrées dans le descripteur de sécurité.

La quatrième commande fait appel à l'applet de commande Set-PSSessionConfiguration pour porter le paramètre MaximumDataSizePerCommandMB de la configuration de session MaintenanceShell à 60. Les résultats indiquent que la commande a réussi bien qu'aucun utilisateur ne soit autorisé à accéder à la configuration.

La cinquième commande tente d'utiliser la configuration de session MaintenanceShell dans une session. Elle fait appel à l'applet de commande New-PSSession pour créer une session et au paramètre ConfigurationName pour spécifier la configuration MaintenanceShell. Les résultats indiquent que la commande New-PSSession échoue car l'utilisateur n'a pas accès à la configuration.






Voir aussi




Table des matières