RUBRIQUE
about_Session_Configurations
DESCRIPTION COURTE
Décrit les configurations de session, qui déterminent les
utilisateurs qui peuvent se connecter à l'ordinateur à distance
et les commandes qu'ils peuvent exécuter.
DESCRIPTION LONGUE
Une configuration de session est un groupe de paramètres sur
l'ordinateur local qui définissent l'environnement pour les
sessions Windows PowerShell créées lorsque les utilisateurs
distants se connectent à l'ordinateur local.
Les administrateurs de l'ordinateur peuvent utiliser des
configurations de session pour protéger l'ordinateur et définir
des environnements personnalisés pour les utilisateurs qui se
connectent à l'ordinateur.
Les administrateurs peuvent également utiliser des configurations
de session pour déterminer les autorisations requises pour se
connecter à distance à l'ordinateur. Par défaut, seuls les
membres du groupe Administrateurs ont l'autorisation d'utiliser
la configuration de session pour se connecter à distance, mais
vous pouvez modifier les paramètres par défaut pour autoriser
tous les utilisateurs, ou des utilisateurs sélectionnés, à se
connecter à distance à votre ordinateur.
Les configurations de session sont une fonctionnalité de la
communication à distance Windows PowerShell basée sur la Gestion
des services Web. Elles sont employées uniquement lorsque vous
utilisez les applets de commande New-PSSession, Invoke-Command ou
Enter-PSSession pour vous connecter à un ordinateur distant.
Remarque : pour gérer les configurations de session sur un
ordinateur qui exécute Windows Vista, Windows Server 2008
ou une version ultérieure de Windows, démarrez Windows
PowerShell avec l'option Exécuter en tant qu'administrateur.
À propos des configurations de session
Chaque session Windows PowerShell utilise une configuration de
session. En font partie les sessions permanentes que vous créez à
l'aide des applets de commande New-PSSession ou Enter-PSSession
et les sessions temporaires que Windows PowerShell crée lorsque
vous utilisez le paramètre ComputerName d'une applet de commande
qui utilise une technologie de communication à distance basée sur
la Gestion des services Web, par exemple Invoke-Command.
Les administrateurs peuvent utiliser des configurations de
session pour protéger les ressources de l'ordinateur et créer des
environnements personnalisés pour les utilisateurs qui se
connectent à l'ordinateur. Par exemple, vous pouvez utiliser une
configuration de session pour limiter la taille des objets que
l'ordinateur reçoit dans la session, définir le mode de langage
de la session et spécifier les applets de commande, fournisseurs
et fonctions qui sont disponibles dans la session.
En configurant le descripteur de sécurité d'une configuration de
session, vous déterminez qui peut utiliser la configuration de
session pour se connecter à l'ordinateur. Les utilisateurs
doivent disposer de l'autorisation d'exécution sur une
configuration de session pour l'utiliser dans une session.
Si un utilisateur n'a pas les autorisations requises pour
utiliser les configurations de session sur un ordinateur, il ne
peut pas se connecter à distance à l'ordinateur. Par défaut,
seuls les administrateurs de l'ordinateur ont l'autorisation
d'utiliser les configurations de session par défaut. Cependant,
vous pouvez modifier les descripteurs de sécurité pour permettre
à tout le monde, à personne ou uniquement à des utilisateurs
sélectionnés d'utiliser les configurations de session sur votre
ordinateur.
Configurations de session par défaut
Windows PowerShell inclut une configuration de session intégrée nommée
Microsoft.PowerShell. Sur les ordinateurs qui exécutent des versions
64 bits de Windows, Windows PowerShell fournit également
Microsoft.PowerShell32, une configuration de session 32 bits.
Ces configurations de session sont utilisées par défaut pour les
sessions, autrement dit lorsqu'une commande permettant de créer
une session n'inclut pas le paramètre ConfigurationName de
l'applet de commande New-PSSession, Enter-PSSession ou Invoke-Command.
Les descripteurs de sécurité des configurations de session par
défaut permettent uniquement aux membres du groupe Administrateurs
sur l'ordinateur local de les utiliser. Ainsi, seuls les membres
du groupe Administrateurs peuvent se connecter à distance à
l'ordinateur à moins que vous ne modifiiez les paramètres par défaut.
Vous pouvez modifier les configurations de session par défaut en
utilisant la variable de préférence $PSSessionConfigurationName.
Pour plus d'informations, consultez about_Preference_Variables.
Affichage des configurations de session sur l'ordinateur local Pour
obtenir les configurations de session sur votre ordinateur local,
utilisez l'applet de commande Get-PSSessionConfiguration.
Par exemple, tapez :
C:\PS> get-pssessionconfiguration | format-list -property name, permission
Name : microsoft.powershell
Permission : BUILTIN\Administrators AccessAllowed
Name : microsoft.powershell32
Permission : BUILTIN\Administrators AccessAllowed
Vous pouvez également utiliser le fournisseur de Gestion des
services Web dans Windows PowerShell pour afficher les
configurations de session. Le fournisseur de Gestion des services
Web crée un lecteur WSMAN: dans votre session.
Dans le lecteur WSMAN:, les configurations de session figurent
dans le nœud Plugin. (Toutes les configurations de session
figurent dans le nœud Plugin, mais il existe des éléments dans
le nœud Plugin qui ne sont pas des configurations de session.)
Par exemple, pour afficher les configurations de session sur
l'ordinateur local, tapez :
C:\PS> dir wsman:\localhost\plugin\microsoft*
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
Name Type Keys
---- ---- ----
microsoft.powershell Container {Name=microsoft.powershell}
microsoft.powershell32 Container {Name=microsoft.powershell}
Affichage des configurations de session sur un ordinateur distant
Pour afficher les configurations de session sur un ordinateur
distant, utilisez l'applet de commande Connect-WSMan pour ajouter
une note pour l'ordinateur distant au lecteur WSMAN: sur votre
ordinateur local, puis utilisez le lecteur WSMAN: pour afficher
les configurations de session.
Par exemple, la commande suivante ajoute un nœud pour l'ordinateur
distant Server01 au lecteur WSMAN: sur l'ordinateur local.
C:\PS> connect-wsman server01.corp.fabrikam.com
Une fois la commande terminée, vous pouvez naviguer jusqu'au nœud
pour l'ordinateur Server01 afin d'afficher les configurations de session.
Par exemple :
C:\PS> cd wsman:
PS WSMan:\> dir
ComputerName Type
------------ ----
localhost Container
server01.corp.fabrikam.com Container
PS WSMan:\> dir server01*\plugin\*
WSManConfig : Microsoft.WSMan.Management\WSMan::server01.corp.fabrikam.com\Plugin
Name Type Keys
---- ---- ----
microsoft.powershell Container {Name=microsoft.powershell}
microsoft.powershell32 Container {Name=microsoft.powershell32}
Modification du descripteur de sécurité d'une configuration de
session Par défaut, les membres du groupe Administrateurs sur
l'ordinateur disposent de l'autorisation d'exécution sur les
configurations de session par défaut, mais vous pouvez modifier
les descripteurs de sécurité sur les configurations de session par
défaut et sur toutes les configurations de session que vous créez.
Pour accorder à d'autres utilisateurs l'autorisation de se
connecter à distance à l'ordinateur, utilisez l'applet de commande
Set-PSSessionConfiguration pour ajouter les autorisations d'exécution
pour ces utilisateurs aux descripteurs de sécurité des configurations
de session Microsoft.PowerShell et Microsoft.Powershell32.
Par exemple, la commande suivante ouvre une page de propriétés
qui vous permet de modifier le descripteur de sécurité pour la
configuration de session par défaut Microsoft.PowerShell.
C:\PS> set-pssessionConfiguration -name Microsoft.PowerShell -showSecurityDescriptorUI
Pour refuser à tout le monde l'autorisation sur toutes les
configurations de session sur l'ordinateur, utilisez la fonction
Disable-PSRemoting ou l'applet de commande Disable-PSSessionConfig
uration. Par exemple, la commande suivante ajoute une entrée
" Tout refuser " à toutes les configurations de session sur
l'ordinateur.
C:\PS> disable-psremoting
Pour ajouter une entrée " Tout refuser " à une configuration de
session particulière, utilisez l'applet de commande
Disable-PSSessionConfiguration. Par exemple, la commande suivante
ajoute une entrée " Tout refuser " à la configuration de session
Microsoft.PowerShell.
C:\PS> disable-pssessionConfiguration -name Microsoft.PowerShell
Pour supprimer l'entrée " Tout refuser " de toutes les
configurations de session, utilisez l'applet de commande
Enable-PSRemoting ou Enable-PSSessionConfiguration. Par exemple,
la commande suivante supprime l'entrée " Tout refuser " des
configurations de session par défaut.
C:\PS> enable-pssessionConfiguration -name Microsoft.Power*
Pour apporter d'autres modifications au descripteur de sécurité
d'une configuration de session, utilisez l'applet de commande
Set-PSSessionConfiguration. Utilisez le paramètre SecurityDescriptorSDDL
pour envoyer une valeur de chaîne SDDL. Utilisez le paramètre
ShowSecurityDescriptorUI pour afficher une feuille de propriétés
d'interface utilisateur qui vous aide à créer une valeur SDDL.
Par exemple :
C:\PS> set-pssessionConfiguration -name Microsoft.PowerShell -showSecurityDescriptorUI
Création d'une configuration de session
Pour créer une configuration de session sur l'ordinateur local,
utilisez l'applet de commande Register-PSSessionConfiguration.
Pour définir la nouvelle configuration de session, vous pouvez
utiliser un assembly C#, un script Windows PowerShell et les
paramètres de l'applet de commande Register-PSSessionConfiguration.
Par exemple, la commande suivante crée une configuration de
session qui est identique à la configuration de session
Microsoft.PowerShell, sauf qu'elle limite le volume des données
reçues d'une commande distante à 20 mégaoctets (20 Mo).
(La valeur par défaut est 50 Mo.)
c:\PS> register-psSessionConfiguration -name NewConfig --MaximumReceivedDataSizePerCommandMB 20
Lorsque vous créez une configuration de session, vous pouvez la
gérer à l'aide des autres applets de commande de configuration de
session et elle s'affiche dans le lecteur WSMAN:.
Pour plus d'informations, consultez Register-PSSessionConfiguration.
Suppression d'une configuration de session
Pour supprimer une configuration de session de l'ordinateur
local, utilisez l'applet de commande Unregister-PSSessionConfigura
tion. Par exemple, la commande suivante supprime la configuration
de session NewConfig de l'ordinateur.
c:\PS> unregister-psSessionConfiguration -name NewConfig
Pour plus d'informations, consultez Unregister-PSSessionConfiguration.
Sélection d'une configuration de session
Pour sélectionner une configuration de session particulière pour
une session, utilisez le paramètre ConfigurationName de l'applet
de commande New-PSSession, Enter-PSSession ou Invoke-Command.
Par exemple, cette commande utilise l'applet de commande
New-PSSession pour démarrer une session PSSession sur
l'ordinateur Server01. La commande utilise le paramètre
ConfigurationName pour sélectionner la configuration WithProfile
sur l'ordinateur Server01.
C:\PS> new-pssession -computername Server01 -configurationName WithProfile
Cette commande réussit uniquement si l'utilisateur actuel a
l'autorisation d'utiliser la configuration de session WithProfile
ou peut fournir les informations d'identification d'un utilisateur
qui a les autorisations requises.
Vous pouvez également utiliser la variable de préférence
$PSSessionConfigurationName pour modifier la configuration de
session par défaut sur l'ordinateur. Pour plus d'informations sur
la variable de préférence $PSSessionConfigurationName, consultez
about_Preference_Variables.
VOIR AUSSI
about_Preference_Variables
about_PSSession
about_Remote
New-PSSession
Disable-PSSessionConfiguration
Enable-PSSessionConfiguration
Get-PSSessionConfiguration
Register-PSSessionConfiguration
Set-PSSessionConfiguration
Unregister-PSSessionConfiguration