Definir grupos, equipes e permissões usando o plug-in Grupos e Permissões

Você pode definir grupos de segurança para controlar o acesso às áreas funcionais em um projeto de equipe.Além dos grupos de segurança padrão em Visual Studio Team Foundation Server, você pode configurar os grupos inicial de um projeto de equipe, os membros do grupo, e permissões de segurança personalizando os grupos e permissões da plataforma.Com esse plug-in, você pode definir grupos, equipes, adicione grupos e membros como usuários a grupos e as permissões, conceda aos grupos.

Este tópico descreve a estrutura de sintaxe de groups, iterationPath, members, permissions, e os elementos de teamsettings que são usados no arquivo para os grupos e permissões da plataforma.Para obter mais informações sobre como usar esses elementos, consulte Configurar grupos iniciais, equipes, membros e permissões.

Neste tópico

  • Nome e localização de grupos de encaixe

  • Definindo grupos

  • Definindo membros

  • Definindo equipes e configurações de equipe

  • Definindo permissões

  • Referência do elemento de grupos

Nome e localização de grupos de encaixe

O plug-in de grupos e de permissão é definido pelo arquivo de plug-in de GroupsandPermissions.xml, que deve estar de acordo com a definição de esquema que é definida no arquivo de Gss.xsd.Você pode baixar os arquivos de esquema para modelos de processo de seguinte página no site da Microsoft: Esquemas de item de modelo e de trabalho do processo para o Visual Studio team foundation.

A tabela a seguir resume os nomes de arquivo, da pasta, e o plug-in para os modelos de processo para soluções Framework (MSF) da Microsoft.

Nome de arquivo:

GroupsandPermissions.xml

Nome da pasta:

Grupos e permissões

Nome de plug-in:

Microsoft.ProjectCreationWizard.Groups

ObservaçãoObservação

Você pode alterar os nomes de arquivo XML e da pasta mas não o plug-in.Visual Studio Team Foundation Server não inclui um mecanismo para a implantação de plug-ins do lado do cliente, de políticas, ou outras alterações.Se você deseja implantar esse tipo de funcionalidade, você deve usar seu próprio programa de distribuição e de instalação.

Em grupos e as permissões plug-in, você especifica uma ou mais tarefas e suas dependências dentro do elemento de taskXml .Geralmente, você especifica uma tarefa pelo grupo de segurança para criar o processo.Para obter mais informações sobre como especificar tarefas, consulte Definir as tarefas para processar um plug-in.

De volta ao topo

Definindo grupos

Você usa o elemento de group para especificar um novo grupo de segurança em Team Foundation Server.

<group name="GroupName" description="GroupDescription"></group>

O exemplo a seguir mostra como criar um grupo que é chamado Leitor:

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

De volta ao topo

Definindo membros

Você usa o elemento de member para atribuir um grupo como um membro de um grupo de segurança em Team Foundation Server.

<member name="MemberName" ></member>
ObservaçãoObservação

Um grupo que é uma equipe (isTeam="true") não pode ser um membro de um grupo.

O exemplo a seguir mostra como adicionar TestGroup1 como um membro 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>

De volta ao topo

Definindo equipes e configurações de equipe

No arquivo de plug-in de grupos padrão e permissões, a macro de @defaultTeam cria a equipe padrão no caminho de área de raiz.Você pode alterar essa estrutura incluindo caminhos da área adicional no arquivo de plug-in de classificação.Usando o elemento de teamsettings , você pode configurar as passos iterações atribuídas a uma equipe.O plug-in usa o seguinte trecho de código.Nesse exemplo, três iterações são definidas para a equipe padrão.

Observação importanteImportante

Você deve atribuir os caminhos de iteração que correspondem aos caminhos atribuídos no arquivo de plug-in de classificação.Consulte Definir as áreas iniciais e as iterações no plug-in de classificação.

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

Você também pode definir equipes adicionais em um projeto de equipe.Você faz isso definindo um grupo e atribuindo o atributo de isTeam a true.O exemplo a seguir mostra como definir uma equipe e seus permissões, membros, e atribuições iniciais de sprint.Especifique as configurações padrão de equipe para um projeto de equipe.

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

Definindo permissões

Você deve especificar permissões para cada grupo que você criar.Você usa o elemento de permission essa finalidade.

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

O exemplo a seguir mostra como conceder permissões ao grupo de segurança do leitor de modo que os membros possam exibir informações sobre um projeto de equipe, mas não podem alterar essas informações.

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

De volta ao topo

Referência do elemento de grupos

A tabela a seguir descreve os elementos que você usa para definir os grupos iniciais e permissões para um projeto de equipe se.Você especifica esses elementos em um recipiente de taskXml no arquivo de plug-in de grupos e de permissões.Para obter informações sobre esse elemento, consulte Definir as tarefas para processar um plug-in.

Observação de cuidadoCuidado

O arquivo de esquema de Gss.xsd não define os elementos de property ou de properties .Quando você carregar o modelo de processo, o gerenciador do modelo de processo valida esses elementos antes de armazená-los em Team Foundation Server.

Os elementos de groups e de group (grupos e permissão) são diferentes de elementos de groups e de group (modelo de processo).Para obter informações sobre último pares de elementos, consulte Referência de Elementos XML de ProcessTemplate.

group

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

As seguintes definições se aplicam para cada atributo:

  • name: Necessário.Especifica o nome de grupo.O nome do grupo deve ser de 1 a 255 caracteres.

  • isTeam: Opcional.Identifica o grupo de equipe, que suporta pequenos grupos para organizar seu trabalho em um projeto de equipe.

  • description: Necessária quando o grupo não for uma equipe.Especifica uma descrição de grupo.A descrição é exibida em páginas de segurança de Team Web Access.

group é um elemento filho opcional de groups e de Children.

Define um grupo ou uma equipe e permissões e seus membros.

groups

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

groups é um filho de taskXml necessário para os grupos e permissões da plataforma.

Contém as definições de grupo e de permissão.

iterationPath

<iterationPath path="IterationName" />

iterationPath é um filho de iterationPathsnecessário.

Especifica uma etapa de equipe.

iterationPaths

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

iterationPaths é um elemento filho opcional de teamsettings.

Especifica as etapas de equipe.

member

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

Para obter informações sobre como especificar grupos padrão, consulte Macros de grupo e grupos padrões definidos no Team Foundation Server.

member é um filho de membersnecessário.

Especifica o nome de um grupo que você está adicionando como um membro de outro grupo.Você pode criar grupos e automaticamente populá-los com grupos padrão em Team Foundation Server, grupos de projeto definidos anteriormente, e grupos e usuários no Active Directory.

members

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

members é um elemento filho opcional de group.

Especifica a coleção de membros para adicionar ao grupo.

permission

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

Onde as seguintes definições se aplicam para cada atributo:

  • name: Necessário.Especifica o nome de permissão.Para obter mais informações, consulte a tabela em Configurar grupos iniciais, equipes, membros e permissões que descreve cada combinação de classe e o nome você pode especificar como uma permissão.

  • class: Necessário.Identifica a classe, ou a área, onde a permissão de grupo é concedida.Os seguintes valores são válidas: NAMESPACE (coleção nível), PROJECT (nível do projeto), CSS_NODE (nó da área) e ITERATION_NODE (nó de iteração).

  • allow: Opcional.Especifica um valor true ou false que indica se você estiver permitindo a permissão.

permission é um filho de permissionsnecessário.

Especifica a permissão aplicar ao grupo.

permissions

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

permissions é um filho de groupnecessário.

Especifica a coleção de permissões aplicar ao grupo.

teamsettings

<teamSettings areaPath="Area">
. . .
</teamSettings>

teamsettings é um elemento filho opcional de group.

Configurar o projeto de equipe como a equipe padrão, e opcionalmente especificar as etapas de equipe com o elemento de iterationPath .

De volta ao topo

Consulte também

Conceitos

Configurar grupos iniciais, equipes, membros e permissões

Controlar o acesso às áreas funcionais

Configurando permissões de usuários e grupos

Personalizar as áreas funcionais em um modelo de processo

Outros recursos

Gerenciar permissão para criar ou modificar itens de trabalho

Alterar Histórico

Date

History

Razão

Em agosto de 2012

Fixa informações sobre a definição de uma equipe e adicionadas informações sobre o atributo de isTeam usado para especificar equipe em um grupo.

Correção de bug de conteúdo.