Partager via


Définir des groupes, des équipes et des 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.Outre les 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.Avec ce plug-in, vous pouvez définir des groupes, équipes, ajouter des groupes et des utilisateurs comme membres aux groupes, et autorisations à accorder aux groupes.

Cette rubrique décrit la structure de la syntaxe d' groups, iterationPath, members, permissions, et éléments d' teamsettings utilisés dans le fichier pour le 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.

Dans cette rubrique

  • Nom et emplacement du plug-in Groupes

  • Définition de groupes

  • Définition de membres

  • Définir les équipes et des paramètres d'équipe

  • Définition d'autorisations

  • Référence des éléments Groups

Nom et emplacement du plug-in des 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 de modèles de processus à partir de la page suivante du site Web Microsoft : Process Template and Work Item Schemas for Visual Studio Team Foundation.

Le tableau suivant récapitule les noms du fichier, du dossier et du plug-in pour les modèles de processus pour Microsoft Solutions Framework (MSF).

Nom du fichier :

GroupsandPermissions.xml

Nom du dossier :

Groupes et autorisations

Nom du plug-in :

Microsoft.ProjectCreationWizard.Groups

[!REMARQUE]

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 et 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.

Retour au début

Définir des groupes

Vous utilisez l'élément group pour 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 intitulé 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>

Retour au début

Définir des membres

Vous utilisez l'élément member pour assigner un groupe en tant que membre d'un groupe de sécurité dans Team Foundation Server.

<member name="MemberName" ></member>

[!REMARQUE]

Un groupe qui est une équipe (isTeam="true") ne peut pas être membre du groupe.

L'exemple suivant indique 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>

Retour au début

Définir les équipes et des paramètres d'équipe

Dans le fichier de plug-in groupes par défaut et autorisations, le d' @defaultTeam crée l'équipe par défaut au chemin de zone racine.Vous pouvez modifier cette structure en incluant les chemins de zone supplémentaires dans le fichier de plug-in classification.À l'aide de l'élément d' teamsettings, vous pouvez préconfigurer les itérations assignées à une équipe.Le plug-in utilise l'extrait de code suivant.Dans cet exemple, trois itérations définies pour l'équipe par défaut.

Important

Vous devez assigner des chemins d'itération qui correspondent aux chemins assignés 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 les équipes supplémentaires dans un projet d'équipe.Pour ce faire en définissant un groupe et en assignant l'attribut d' isTeam à true.L'exemple suivant montre comment définir une équipe et ses autorisations, les membres, et assignations initiaux de sprint.Spécifiez les configurations par défaut d'équipe 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éfinir des autorisations

Vous devez spécifier des autorisations pour chaque groupe que vous créez.Vous utilisez l'élément permission dans cet objectif.

<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 d'un projet d'équipe mais qu'ils ne puissent pas 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>

Retour au début

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 les 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, consultez Définir les tâches pour traiter un plug-in.

Mise en gardeAttention

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 obtenir des informations sur cette dernière paire d'éléments, consultez Référence des éléments XML ProcessTemplate.

group

<group name="GroupName" isTeam="true | false" description="GroupDescription">
   <permissions> . . . </permissions>
   <members> . . . </members>
</group>

Les définitions suivantes s'appliquent à chaque attribut :

  • name : requis.Spécifie le nom du groupe.Le nom du groupe doit comporter entre 1 et 255 caractères.

  • isTeam : facultatif.Identifie le groupe en équipe, qui prend en charge des détails pour planifier leur travail dans un projet d'équipe.

  • description: Obligatoire lorsque le groupe n'est pas une équipe.Spécifie une description du groupe.La description s'affiche dans les pages de sécurité d' Team Web Access.

group est un élément enfant facultatif de groups et Children.

Définit un groupe ou une équipe et ses autorisations et membres.

groups

<groups>
   <group> . . . </group>
</groups>

groups est un élément enfant requis de taskXml pour le plug-in Groupes et autorisations.

Contient les définitions de groupe et d'autorisations.

iterationPath

<iterationPath path="IterationName" />

L'élément iterationPath est un enfant obligatoire de l'élément iterationPaths.

Spécifie un jalon d'équipe.

iterationPaths

<iterationPaths backlogPath="BacklogPathName">
. . .      </iterationPaths>

iterationPaths est un élément enfant facultatif de teamsettings.

Spécifie des jalons d'équipe.

member

<member name="MemberName" ></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.

L'élément member est un enfant obligatoire de l'élément 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 des utilisateurs Active Directory.

members

<members>
   <member> . . . </member>
</members>

members est un élément enfant facultatif de group.

Spécifie la collection de membres pour ajouter au groupe.

permission

<permission name="PermissionName" class="ClassName" allow="true | false" />

Situations dans lesquelles les définitions suivantes s'appliquent pour chaque attribut :

  • name : requis.Spécifie le nom de l'autorisation.Pour plus d'informations, consultez le tableau dans la rubrique Configurer des groupes, des équipes, des membres et des autorisations initiaux qui décrit chaque classe et combinaison de noms que vous pouvez spécifier comme autorisation.

  • class : requis.Identifie la classe, ou zone, à laquelle l'autorisation de groupe est accordée.Les valeurs suivantes sont valides : NAMESPACE (niveau PROJECT ), (niveau du projet), CSS_NODE (nœud de zone) et ITERATION_NODE (nœuds d'itération).

  • allow : facultatif.Spécifie une valeur True ou False qui indique si vous accordez ou non l'autorisation.

L'élément permission est un enfant obligatoire de l'élément permissions.

Spécifie l'autorisation à appliquer au groupe.

permissions

<permissions >
   <permission> . . . </permissions>
</permissions >

L'élément permissions est un enfant obligatoire de l'élément group.

Spécifie la collection d'autorisations à appliquer au groupe.

teamsettings

<teamSettings areaPath="Area">
. . .
</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 d' iterationPath .

Retour au début

Voir aussi

Concepts

Configurer des groupes, des équipes, des membres et des autorisations initiaux

Contrôler l'accès aux domaines fonctionnels

Configuration d'utilisateurs, de groupes et d'autorisations

Personnaliser les domaines fonctionnels au sein d'un modèle de processus

Autres ressources

Gérer l'autorisation pour créer ou modifier des éléments de travail

Historique des modifications

Date

Historique

Motif

Août 2012

Informations corrigées sur définir une équipe et ajout d'informations sur l'attribut d' isTeam utilisé pour spécifier un groupe en équipe.

Résolution des bogues de contenu.