Configurer des groupes, des équipes, des membres et des autorisations initiaux
À l'aide du fichier de plug-in Groupes et autorisations, vous pouvez configurer les paramètres de sécurité initiaux d'un projet d'équipe. Pour cela, vous définissez des tâches qui créent des groupes de sécurité, imbriquent des groupes, définissent des groupes comme équipes, configurent les paramètres d'équipe initiaux, assignent des membres aux groupes, et accordent ou refusent des autorisations spécifiques à chaque groupe. En plus d'effectuer ces tâches, vous pouvez spécifier les paramètres de sécurité initiaux des zones au niveau de la collection, au niveau du projet et de classification de projet.
Les modèles de processus Microsoft assignent plusieurs autorisations aux groupes par défaut. Vous pouvez modifier ces assignations en personnalisant le fichier de plug-in Groupes et autorisations. Pour plus d'informations sur ce plug-in, consultez Définir les groupes, les équipes et les autorisations à l'aide du plug-in Groupes et autorisations.
Dans cette rubrique
Définition et assignation d'autorisations aux groupes
Macros de groupe et groupes par défaut
Imbrication de groupes et assignation de membres aux groupes
Définition d'une équipe
Assignation d'autorisations au niveau de la collection
Assignation d'autorisations au niveau du projet
Assignation d'autorisations pour contrôler les chemins de zone
Assignation d'autorisations pour contrôler les chemins d'itération
Pour plus d'informations sur la configuration des paramètres de sécurité initiaux pour les domaines fonctionnels d'un projet d'équipe, tels que Team Foundation Build, le contrôle de version Team Foundation et Visual Studio Lab Management, consultez Contrôler l'accès aux domaines fonctionnels.
Pour plus d'informations sur la personnalisation des types d'éléments de travail pour autoriser ou refuser l'accès aux groupes ou utilisateurs, consultez Appliquer une règle à un champ d'élément de travail.
Pour plus d'informations sur l'administration des utilisateurs et groupes, et sur le contrôle d'accès pour Visual Studio Application Lifecycle Management (ALM), consultez Gérer des utilisateurs ou des groupes dans TFS.
Définition et assignation d'autorisations aux groupes
Vous pouvez utiliser les éléments group et member pour spécifier un nouveau groupe de sécurité dans Team Foundation Server et ajouter des membres à ce groupe. Vous pouvez utiliser l'élément permission de groupe pour assigner des autorisations à un groupe et aux membres de ce groupe. Vous devez encapsuler chacun de ces éléments dans les éléments de conteneur correspondants : groups, members et permissions. Vous utilisez la structure de syntaxe suivante pour chacun de ces éléments :
<group name="Group Name" description="Description of Group"></group>
<member name="MemberName"></member>
<permission name="PermissionName" class="ClassName" allow="True | False"/>
Le tableau suivant décrit les attributs des éléments group, member et permission de groupe. Vous utilisez ces éléments uniquement dans le fichier de plug-in Groupes et autorisations.
Élément |
Attribut |
Description |
---|---|---|
group |
name |
Spécifie le nom du groupe que vous créez. |
isTeam |
Indique si le groupe est une équipe (true) ou non (false). |
|
description |
Décrit l'objectif du groupe aux autres utilisateurs. |
|
member |
name |
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 préremplir avec chacun des types suivants de membres :
Pour plus d'informations sur le format à utiliser pour spécifier des groupes par défaut, consultez Macros de groupe et groupes par défaut définis dans Team Foundation Server, plus loin dans cette rubrique. |
permission |
name |
Identifie l'autorisation appliquée. Pour obtenir la liste des autorisations prises en charge, consultez les sections suivantes de cette rubrique :
|
class |
Identifie la classe, ou zone, à laquelle l'autorisation de groupe est accordée. Les valeurs suivantes sont valides :
|
|
allow |
Utilise une valeur true ou false pour indiquer si l'autorisation est accordée ou refusée. |
|
path |
Identifie le nœud du chemin de zone ou d'itération où l'autorisation est appliquée. Cet attribut est valide uniquement quand class a la valeur CSS_NODE ou ITERATION_NODE. |
Macros de groupe et groupes par défaut
Le tableau suivant répertorie les macros que vous pouvez utiliser pour spécifier un groupe par défaut défini dans Team Foundation Server.
Notes
Vous pouvez spécifier les macros du tableau suivant uniquement dans le plug-in Groupes et autorisations.Vous ne pouvez pas spécifier ces macros quand vous assignez des autorisations à l'aide des plug-ins pour la génération, le contrôle de version ou Lab Management.
Groupes par défaut |
Macro |
---|---|
Project Collection Administrators |
[SERVER]\$$PROJECTCOLLECTIONADMINGROUP$$ [SERVER]\$$TEAMFOUNDATIONADMINGROUP$$ $$COLLECTIONADMINGROUP$$ |
Project Collection Service Accounts |
[SERVER]\$$PROJECTCOLLECTIONSERVICESGROUP$$ |
Project Collection Build Service Accounts |
[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$ $$COLLECTIONBUILDSERVICESGROUP$$ |
Project Collection Build Administrators |
[SERVER]\$$PROJECTCOLLECTIONBUILDADMINSGROUP$$ $$COLLECTIONBUILDADMINISTRATORSGROUP$$ |
Project Administrators |
$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\Builders |
Créateur du projet |
$$CREATOR_OWNER$$ @creator |
Équipe par défaut |
@defaultTeam |
Exemple d'imbrication de groupes et d'assignation de membres aux groupes
L'exemple suivant indique comment configurer des groupes intitulés TestGroup1, TestGroup2 et TestGroup3. Dans cet exemple, vous ajoutez TestGroup1 en tant que membre de TestGroup2. Pour que ce code soit valide, vous devez définir TestGroup1 avant de définir 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>
<group name="TestGroup3" description="Test group 3. Contains DOMAIN\USER, DOMAIN\GROUP, Project Administrators, and Project Collection Build Service Accounts.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="DOMAIN\USER" />
<member name="DOMAIN\GROUP" />
<member name="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
<member name="[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$" />
</members>
</group>
</groups>
</taskXml>
</task>
Définition d'une équipe
En plus de créer des groupes, vous pouvez assigner un groupe comme une équipe. La création d'un projet d'équipe crée également une équipe par défaut. Si vous avez plusieurs équipes qui souhaitent planifier leur travail indépendamment des autres équipes, vous pouvez définir ces équipes dans le fichier de plug-in Groupes et autorisations, ou vous pouvez les configurer après avoir créé le projet d'équipe. Consultez Ajouter une autre équipe ou une hiérarchie d'équipe.
L'exemple suivant montre comment configurer un groupe comme une équipe. Dans cet exemple, vous spécifiez le groupe Dream Team comme une équipe et ajoutez le créateur de projet d'équipe comme membre de l'équipe. Quels que soient les chemins d'itération spécifiés pour l'équipe, ils doivent être définis dans le fichier de plug-in Classifications. Consultez Définir les zones et les itérations initiales dans le plug-in Classification.
<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="Release 1\Sprint 1" />
<iterationPath path="Release 1\Sprint 2" />
<iterationPath path="Release 1\Sprint 3" />
<iterationPath path="Release 1\Sprint 4" />
<iterationPath path="Release 1\Sprint 5" />
<iterationPath path="Release 1\Sprint 6" />
</iterationPaths>
</teamSettings>
</group>
Assignation d'autorisations au niveau de la collection
Vous pouvez assigner des autorisations au niveau de la collection à l'aide de l'élément permission de groupe et de la classe NAMESPACE. Ces autorisations contrôlent l'accès aux ressources disponibles pour plusieurs projets d'équipe. Vous ne pouvez définir des autorisations au niveau de la collection que pour les catégories suivantes d'utilisateurs :
Les utilisateurs et les groupes au niveau de la collection tels que le groupe Project Collection Administrators
Les groupes au niveau du projet ayant été ajoutés au niveau de la collection sur votre serveur qui exécute Team Foundation
Les groupes personnalisés que vous créez et ajoutez au niveau de la collection
Pour déterminer le format à utiliser pour spécifier des groupes, consultez Macros de groupe et groupes par défaut, plus haut dans cette rubrique.
Notes
Vous pouvez définir ces autorisations en cliquant avec le bouton droit sur le serveur dans Team Explorer, puis en cliquant sur Sécurité, en ouvrant et utilisant la console d'administration pour Team Foundation, ou en utilisant les outils en ligne de commande TFSSecurity et tf.Pour plus d'informations, consultez Collection-Level Groups, Modification de groupes et d'autorisations avec TFSSecurity et Permission Command.
L'exemple suivant indique comment accorder des autorisations au niveau de la collection aux administrateurs d'un projet d'équipe.
<group name="PROJECTADMINGROUP" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="NAMESPACE" allow="true" />
<permission name="WORK_ITEM_WRITE" class="NAMESPACE" allow="true" />
<permission name="MANAGE_LINK_TYPES" class="NAMESPACE" allow="true" />
<permission name="MANAGE_TEMPLATE" class="NAMESPACE" allow="true" />
<permission name="MANAGE_TEST_CONTROLLERS" class="NAMESPACE" allow="true" />
</permissions>
</group>
Le tableau suivant décrit les autorisations au niveau de la collection que vous pouvez assigner.
Notes
Par défaut, aucune autorisation au niveau de la collection n'est assignée dans les modèles de processus MSF.
Autorisation |
Description |
---|---|
DIAGNOSTIC_TRACE |
Modifier les paramètres de suivi. Permet de modifier les paramètres de suivi pour collecter des informations de diagnostic plus détaillées sur les services web pour Team Foundation Server. |
CREATE_PROJECTS |
Créer des projets. Peut créer des projets dans la collection de projets d'équipe. |
GENERIC_WRITE |
Modifier les informations au niveau de la collection. Permet de modifier des autorisations au niveau de la collection pour les utilisateurs et groupes de la collection de projets d'équipe. Les utilisateurs qui disposent de cette autorisation peuvent effectuer les tâches suivantes :
En outre, les utilisateurs disposant de cette autorisation peuvent modifier les autorisations pour le contrôle de version et ils ont accès en écriture à tous les fichiers du contrôle de version à moins que cet accès ne soit refusé explicitement par d'autres autorisations. |
MANAGE_TEMPLATE |
Gérer le modèle de processus. Permet de télécharger, créer, modifier et charger des modèles de processus vers la collection de projets d'équipe. |
MANAGE_TEST_CONTROLLERS |
Gérer les contrôleurs de test. Permet d'inscrire et d'annuler l'inscription des contrôleurs de test pour la collection de projets d'équipe. |
MANAGE_LINK_TYPES |
Gérer les types de lien d'élément de travail. Permet d'ajouter, de supprimer et de modifier les types de liens des éléments de travail. |
GENERIC_READ |
Afficher les informations au niveau de la collection. Permet d'afficher l'appartenance de groupes au niveau de la collection et les autorisations de ces utilisateurs. |
Assignation d'autorisations au niveau du projet
Vous pouvez assigner des autorisations au niveau du projet dans le fichier de plug-in Groupes et autorisations. Vous assignez ces autorisations à l'aide de l'élément permission de groupe et la classe PROJECT. Ces autorisations contrôlent l'accès aux ressources d'un projet unique. Vous pouvez accorder l'accès à des utilisateurs et des groupes dans Windows, à des groupes dans Team Foundation et à des groupes que vous avez préalablement définis dans le fichier de plug-in Groupes et autorisations. Pour déterminer le format à utiliser pour spécifier des groupes, consultez Macros de groupe et groupes par défaut, plus haut dans cette rubrique.
L'exemple suivant montre comment accorder plusieurs autorisations au groupe Contributors pour un projet d'équipe.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
<permission name="DELETE_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="PUBLISH_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="VIEW_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="MANAGE_TEST_ENVIRONMENTS" class="PROJECT" allow="true" />
<permission name="MANAGE_TEST_CONFIGURATIONS" class="PROJECT" allow="true" />
</permissions>
</group>
Le tableau suivant décrit les autorisations au niveau du projet que vous pouvez assigner et indique les assignations par défaut effectuées dans les modèles de processus MSF.
Autorisation |
Description |
Readers |
Contributors |
Administrateurs de build |
---|---|---|---|---|
GENERIC_READ |
Afficher les informations au niveau du projet. Permet d'afficher l'appartenance de groupes au niveau du projet et les autorisations de ces membres. |
|||
VIEW_TEST_RESULTS |
Afficher des séries de tests. Permet d'afficher les plans de test de ce nœud. |
|||
MANAGE_TEST_CONFIGURATIONS |
Gérer les configurations de test. Permet de créer et supprimer des configurations de test pour le projet d'équipe. |
|||
MANAGE_TEST_ENVIRONMENTS |
Gérer les environnements de test. Permet de créer et supprimer des environnements de test pour le projet d'équipe. |
|||
PUBLISH_TEST_RESULTS |
Créer des séries de tests. Permet d'ajouter et de supprimer des résultats de tests et d'ajouter ou de modifier des séries de tests pour le projet d'équipe. |
|||
DELETE_TEST_RESULTS |
Supprimer des séries de tests. Permet de supprimer un test planifié pour le projet d'équipe. |
|||
DELETE |
Supprimer un projet d'équipe. Permet de supprimer de Team Foundation Server le projet pour lequel l'utilisateur possède cette autorisation. |
|||
GENERIC_WRITE |
Modifier les informations au niveau du projet. Permet de modifier les autorisations au niveau du projet pour les utilisateurs et les groupes dans Team Foundation Server. |
Assignation d'autorisations pour contrôler les chemins de zone
Vous pouvez assigner des autorisations qui contrôlent l'accès aux définitions de zone à l'aide de l'élément permission de groupe et de la classe CSS_NODE. Ces autorisations contrôlent l'accès à la structure de classification d'un projet unique. Vous pouvez accorder l'accès à des utilisateurs et des groupes dans Windows, à des groupes dans Team Foundation et à des groupes que vous avez préalablement définis dans le fichier de plug-in Groupes et autorisations. Pour plus d'informations sur le format à utiliser pour spécifier des groupes, consultez Macros de groupe et groupes par défaut, plus haut dans cette rubrique.
L'exemple suivant montre comment accorder plusieurs autorisations au groupe Contributors pour un projet d'équipe.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_WRITE" class="CSS_NODE" allow="true" />
<permission name="MANAGE_TEST_PLANS" class="CSS_NODE" allow="true" />
</permissions>
</group>
Le tableau suivant décrit les autorisations que vous pouvez assigner pour contrôler l'accès à la structure hiérarchique des nœuds d'itération et de zone du projet. Il indique également les assignations par défaut effectuées dans les modèles de processus MSF.
Notes
Certaines opérations de suivi des éléments de travail requièrent plusieurs autorisations.Par exemple, vous avez besoin de plusieurs autorisations pour supprimer un nœud.
Autorisation |
Description |
Readers |
Contributors |
Administrateurs de build |
---|---|---|---|---|
GENERIC_READ |
Afficher ce nœud. Permet d'afficher les paramètres de sécurité d'un nœud de zone. |
|||
WORK_ITEM_READ |
Afficher les éléments de travail dans ce nœud. Permet d'afficher, mais pas de modifier, les éléments de travail assignés à un nœud de zone. |
|||
WORK_ITEM_WRITE |
Modifier les éléments de travail dans ce nœud. Permet de modifier les éléments de travail assignés à un nœud de zone. |
|||
MANAGE_TEST_PLANS |
Gérer les plans de test. Permet de créer et modifier les plans de test assignés à un nœud de zone. Si les plans de test n'ont pas été exécutés, vous pouvez également les supprimer. |
|||
CREATE_CHILDREN |
Créer et classer les nœuds enfants. Peut créer de nœuds de zone. Les utilisateurs qui ont cette autorisation et l'autorisation GENERIC_WRITE peuvent déplacer ou réorganiser tout nœud de zone enfant. |
|||
DELETE |
Supprimer ce nœud. Permet de supprimer des nœuds de zone. Les utilisateurs qui ont cette autorisation et l'autorisation GENERIC_WRITE pour un autre nœud peuvent supprimer des nœuds de zone et reclasser des éléments de travail existants à partir du nœud supprimé. Si le nœud supprimé a des nœuds enfants, ces nœuds sont également supprimés. |
|||
GENERIC_WRITE |
Modifier ce nœud. Permet de définir des autorisations pour des nœuds de zone et de les renommer. |
Assignation d'autorisations pour contrôler les chemins d'itération
Vous assignez des autorisations qui contrôlent l'accès aux chemins d'itération à l'aide de l'élément permission de groupe et de la classe ITERATION_NODE. Ces autorisations contrôlent l'accès aux versions jalons ou itérations d'un projet unique. Vous pouvez accorder l'accès à des utilisateurs et des groupes dans Windows, à des groupes dans Team Foundation et à des groupes que vous avez préalablement définis dans le fichier de plug-in Groupes et autorisations. Pour plus d'informations sur le format à utiliser pour spécifier des groupes, consultez Macros de groupe et groupes par défaut, plus haut dans cette rubrique.
L'exemple suivant montre comment accorder plusieurs autorisations au groupe Contributors pour un projet d'équipe :
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="ITERATION_NODE" allow="true" />
<permission name="GENERIC_WRITE" class="ITERATION_NODE" allow="true" />
<permission name="CREATE_CHILDREN" class="ITERATION_NODE" allow="true" />
</permissions>
</group>
Le tableau suivant décrit les autorisations que vous pouvez assigner pour contrôler l'accès à la structure hiérarchique des nœuds d'itération du projet. Comme les modèles de processus MSF ne spécifient pas d'autorisations ITERATION_NODE, tous les membres de l'équipe peuvent créer, afficher et supprimer des nœuds d'itération.
Notes
Certaines opérations de suivi des éléments de travail requièrent plusieurs autorisations.Par exemple, vous avez besoin de plusieurs autorisations pour supprimer un nœud.
Autorisation |
Description |
---|---|
GENERIC_READ |
Afficher ce nœud. Permet d'afficher les paramètres de sécurité d'un nœud. |
CREATE_CHILDREN |
Créer et classer les nœuds enfants. Peut créer de nœuds d'itération. Les utilisateurs qui ont cette autorisation et l'autorisation GENERIC_WRITE peuvent déplacer ou réorganiser tout nœud d'itération. |
DELETE |
Supprimer ce nœud. Permet de supprimer des nœuds d'itération. Les utilisateurs qui ont cette autorisation et l'autorisation GENERIC_WRITE pour un autre nœud peuvent supprimer des nœuds d'itération et reclasser des éléments de travail existants à partir du nœud supprimé. Si le nœud supprimé a des nœuds enfants, ces nœuds sont également supprimés. |
GENERIC_WRITE |
Modifier ce nœud. Permet de définir des autorisations pour des nœuds d'itération et de les renommer. |
Voir aussi
Concepts
Définir les groupes, les équipes et les autorisations à l'aide du plug-in Groupes et autorisations
Contrôler l'accès aux domaines fonctionnels