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