Définir les groupes, les équipes et les autorisations à l'aide du plug-in Groupes et autorisations
Vous pouvez définir des groupes de sécurité pour contrôler l'accès à des domaines fonctionnels dans un projet d'équipe. En plus des groupes de sécurité par défaut dans Visual Studio Team Foundation Server, vous pouvez configurer les groupes, membres de groupe et autorisations de sécurité initiaux d'un projet d'équipe en personnalisant le plug-in Groupes et autorisations. Ce plug-in vous permet de définir des groupes et des équipes, d'ajouter des groupes et des utilisateurs en tant que membres de groupes, et d'accorder des autorisations aux groupes.
Cette rubrique décrit la structure de syntaxe des éléments groups, iterationPath, members, permissions et teamsettings qui sont utilisés dans le fichier du plug-in Groupes et autorisations. Pour plus d'informations sur l'utilisation de ces éléments, consultez Configurer des groupes, des équipes, des membres et des autorisations initiaux.
Nom et emplacement du plug-in Groupes
Le plug-in Groupes et autorisations est défini par le fichier de plug-in GroupsandPermissions.xml, qui doit être conforme à la définition de schéma spécifiée dans le fichier Gss.xsd. Vous pouvez télécharger les fichiers de schéma pour les modèles de processus à partir de la page suivante du site web de Microsoft : Schémas de modèles de processus et d'éléments de travail pour Visual Studio Team Foundation.
Le tableau suivant récapitule les noms du fichier, le dossier et le plug-in pour les modèles de processus MSF (Microsoft Solutions Framework).
Nom du fichier : |
GroupsandPermissions.xml |
Nom du dossier : |
Groupes et autorisations |
Nom du plug-in : |
Microsoft.ProjectCreationWizard.Groups |
Notes
Vous pouvez modifier les noms du fichier XML et du dossier, mais pas du plug-in.Visual Studio Team Foundation Server n'inclut aucun mécanisme de déploiement de plug-ins côté client, de stratégies ou d'autres modifications.Si vous ne voulez pas déployer ce genre de fonctionnalités, vous devez utiliser votre propre programme de distribution et d'installation.
Dans le plug-in Groupes et autorisations, vous indiquez une ou plusieurs tâches, ainsi que leurs dépendances, dans l'élément taskXml. En général, vous spécifiez une tâche par groupe de sécurité à créer pour votre processus. Pour plus d'informations sur la spécification des tâches, consultez Définir les tâches pour traiter un plug-in.
Définition des groupes
L'élément group permet de spécifier un nouveau groupe de sécurité dans Team Foundation Server.
<group name="GroupName" description="GroupDescription"></group>
L'exemple suivant indique comment créer un groupe nommé Reader :
<task id="GroupCreation1"
name="Create Groups and Permissions"
plugin="Microsoft.ProjectCreationWizard.Groups"
completionMessage="Groups and Permissions created.">
<taskXml>
<groups>
<group name="Readers"
description="A group for users who have read access across the project">
<permissions>
<!-- permissions -->
</permissions>
</group>
</groups>
</taskXml>
</task>
Définition des membres
L'élément member permet d'assigner un groupe en tant que membre d'un groupe de sécurité dans Team Foundation Server.
<member name="MemberName" ></member>
Notes
Un groupe qui constitue à une équipe (isTeam="true") ne peut pas être membre d'un autre groupe.
L'exemple suivant montre comment ajouter TestGroup1 en tant que membre de TestGroup2.
<task id="GroupCreation1"
<taskXml>
<groups>
<group name="TestGroup1" description="Test group 1. Contains no members out of the box.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
</group>
<group name="TestGroup2" description="Test group 2. Contains TestGroup1 and Project Administrators.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="TestGroup1" />
<member name="$$PROJECTADMINGROUP$$" />
</members>
</group>
</groups>
</taskXml>
</task>
Définition des équipes et des paramètres d'équipe
Dans le fichier de plug-in Groupes et autorisations par défaut, la macro @defaultTeam crée l'équipe par défaut dans le chemin de zone racine. Vous pouvez modifier cette structure en incluant des chemins de zone supplémentaires dans le fichier de plug-in Classification. L'élément teamsettings permet de préconfigurer les itérations assignées à une équipe. Le plug-in utilise l'extrait de code suivant. Dans cet exemple, trois itérations sont définies pour l'équipe par défaut.
Important
Vous devez assigner des chemins d'itération qui correspondent aux chemins d'accès définis dans le fichier de plug-in Classification.Consultez Définir les zones et les itérations initiales dans le plug-in Classification.
<group name="@defaultTeam">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="@creator"/>
</members>
<teamSettings areaPath="Area">
<iterationPaths backlogPath="Iteration">
<iterationPath path="Iteration 1" />
<iterationPath path="Iteration 2" />
<iterationPath path="Iteration 3" />
</iterationPaths>
</teamSettings>
</group>
Vous pouvez également définir des équipes supplémentaires dans un projet d'équipe. À cette fin, vous définissez un groupe et assignez la valeur true à l'attribut isTeam. L'exemple suivant montre comment définir une équipe et ses autorisations, ses membres et ses assignations sprint initiales. Spécifiez les paramètres d'équipe par défaut pour un projet d'équipe.
<group name="Dream Team" isTeam="true" description="Next generation work">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="@creator"/>
</members>
<teamSettings areaPath="Area">
<iterationPaths backlogPath="Iteration">
<iterationPath path="Iteration 1" />
<iterationPath path="Iteration 2" />
<iterationPath path="Iteration 3" />
</iterationPaths>
</teamSettings>
</group>
Définition des autorisations
Vous devez spécifier des autorisations pour chaque groupe que vous créez. À cette fin, vous utilisez l'élément permission.
<permission name="PermissionName" class="ClassName" allow="true | false"/>
L'exemple suivant montre comment accorder des autorisations au groupe de sécurité Reader afin que ses membres puissent afficher les informations relatives à un projet d'équipe, sans pouvoir les modifier.
<group name="Readers" description="A group for users who have read access across the project">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
<permission name="GENERIC_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_READ" class="CSS_NODE" allow="true" />
</permissions>
</group>
Référence des éléments de groupes
Le tableau suivant décrit les éléments que vous utilisez pour définir les groupes et autorisations initiaux d'un projet d'équipe. Vous spécifiez ces éléments dans un élément conteneur taskXml dans le fichier de plug-in Groupes et autorisations. Pour plus d'informations sur cet élément, voir Définir les tâches pour traiter un plug-in.
Avertissement
Le fichier de schéma Gss.xsd ne définit pas les éléments property ou properties.Lorsque vous téléchargez le modèle de processus, le Gestionnaire de modèles de processus valide ces éléments avant de les stocker dans Team Foundation Server.
Les éléments groups et group (Groupes et autorisations) sont distincts des éléments groups et group (Modèle de processus).Pour plus d'informations sur cette dernière paire d'éléments, consultez Référence des éléments XML du modèle de processus.
group |
Les définitions suivantes s'appliquent à chaque attribut :
|
group est un élément enfant facultatif de groups et Children. Définit un groupe ou une équipe, ainsi que ses autorisations et ses membres. |
groups |
|
groups est un élément enfant obligatoire de taskXml pour le plug-in Groupes et autorisations. Contient les définitions de groupe et d'autorisation. |
iterationPath |
|
iterationPath est un élément enfant obligatoire de iterationPaths. Spécifie un jalon d'équipe. |
iterationPaths |
|
iterationPaths est un élément enfant facultatif de teamsettings. Spécifie des jalons d'équipe. |
member |
Pour plus d'informations sur la spécification des groupes par défaut, consultez Macros de groupe et groupes par défaut définis dans Team Foundation Server. |
member est un élément enfant obligatoire de members. Spécifie le nom d'un groupe que vous ajoutez en tant que membre d'un autre groupe. Vous pouvez créer des groupes et les remplir automatiquement avec des groupes par défaut de Team Foundation Server, des groupes de projets précédemment définis, et des groupes et utilisateurs d'Active Directory. |
members |
|
members est un élément enfant facultatif de group. Spécifie la collection de membres à ajouter au groupe. |
permission |
Les définitions suivantes s'appliquent pour chaque attribut :
|
permission est un élément enfant obligatoire de permissions. Spécifie l'autorisation à appliquer au groupe. |
permissions |
|
permissions est un élément enfant obligatoire de group. Spécifie la collection d'autorisations à appliquer au groupe. |
teamsettings |
|
teamsettings est un élément enfant facultatif de group. Configure le projet d'équipe comme l'équipe par défaut, et spécifie éventuellement des jalons d'équipe avec l'élément iterationPath. |
Voir aussi
Concepts
Configurer des groupes, des équipes, des membres et des autorisations initiaux
Contrôler l'accès aux domaines fonctionnels
Gérer des utilisateurs ou des groupes dans TFS
Personnaliser un modèle de processus