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 a á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 grupos iniciais, membros do grupo e permissões de segurança de um projeto de equipe, personalizando os grupos e permissões plug-in. Com esse plug-in, você pode definir grupos, equipes, adicionar usuários e grupos como membros de grupos e conceder permissões aos grupos.
Este tópico descreve a estrutura de sintaxe do groups, iterationPath, members, permissions, e teamsettings elementos que são usados no arquivo para os grupos e permissões de plug-in. Para obter mais informações sobre como usar esses elementos, consulte Configurar grupos iniciais, equipes, membros e permissões.
Nome e local do plug-in de grupos
Os grupos e permissões plug-in é definido no arquivo de plug-in GroupsandPermissions, que está de acordo com a definição de esquema é definida no arquivo Gss.xsd. Você pode baixar os arquivos de esquema para modelos de processos nesta página do site da Microsoft: Modelo de processos e esquemas de itens de trabalho para Visual Studio Team Foundation.
A tabela a seguir resume os nomes do arquivo, a pasta e o plug-in dos modelos de processo do Microsoft Solutions Framework (MSF).
Nome do arquivo: |
GroupsandPermissions.xml |
Nome da pasta: |
Grupos e Permissões |
Nome do plug-in: |
Microsoft.ProjectCreationWizard.Groups |
Dica
Você pode alterar os nomes do arquivo XML e da pasta, mas não do plug-in.O Visual Studio Team Foundation Server não inclui um mecanismo para a implantação de plug-ins do lado do cliente, políticas ou outras modificações.Para implantar esse tipo de funcionalidade você tem que usar seu próprio programa de instalação e distribuição.
Os grupos e permissões de plug-in, você especifica uma ou mais tarefas e suas dependências dentro do taskXml elemento. Em geral, você pode especificar uma tarefa por grupo de segurança para criar o processo. Para obter mais informações sobre como especificar as tarefas, consulte Definir as tarefas para processar um plug-in.
Definir grupos
Você usa o group elemento 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 denominado 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>
Definir membros
Você usa o member elemento para atribuir um grupo como um membro de um grupo de segurança em Team Foundation Server.
<member name="MemberName" ></member>
Dica
Um grupo é uma equipe (isTeam="true") não pode ser um membro de um grupo.
O exemplo a seguir mostra como adicionar TestGroup1 como membro do 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>
Definir configurações de equipe e equipes
Dentro de grupos e permissões de plug-in arquivo padrão, o @defaultTeam macro cria a equipe padrão no caminho de área da raiz. Você pode alterar essa estrutura, incluindo caminhos de área adicionais dentro do arquivo de plug-in de classificação. Usando o teamsettings elemento, você pode pré-configurar as iterações atribuídas a uma equipe. O plug-in usa o seguinte trecho de código. Neste exemplo, três iterações são definidas para a equipe padrão.
Importante
Você deve atribuir os caminhos de iteração que correspondem aos caminhos definidos no arquivo de plug-in de classificação.Consulte Definir o 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 dentro de um projeto de equipe. Você pode fazer isso definindo um grupo e atribuindo o isTeam atributo true. O exemplo a seguir mostra como definir uma equipe e suas permissões, membros e atribuições de sprint inicial. Especifique as configurações de equipe padrão 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>
Definir permissões
Você deve especificar permissões para cada grupo que você criar. Você usa o permission elemento para 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 para que os membros podem exibir informações sobre um projeto de equipe, mas não podem modificar 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>
Referência de 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. Você especifica esses elementos dentro de uma taskXml elemento contêiner no arquivo de plug-in grupos e permissões. Para obter informações sobre esse elemento, consulte Definir as tarefas para processar um plug-in.
Aviso
O arquivo de esquema Gss.xsd não define o property ou properties elementos.Quando você envia o modelo de processo, o Gerenciador de Modelos de Processo valida esses elementos antes de armazená-los em Team Foundation Server.
O groups e group (grupos e permissões) elementos são distintos de groups e group elementos (modelo de processo).Para obter informações sobre o segundo par de elementos, consulte Referência a elementos XML do modelo de processo.
group |
As seguintes definições se aplicam a cada atributo:
|
O group é um elemento filho opcional de groups e de Children. Define um grupo ou uma equipe e seus membros e permissões. |
groups |
|
groups é um elemento filho obrigatório do taskXml para os grupos e permissões de plug-in. Contém as definições de grupo e a permissão. |
iterationPath |
|
O iterationPath é um elemento filho obrigatório de iterationPaths. Especifica uma etapa de equipe. |
iterationPaths |
|
O iterationPaths é um elemento filho opcional de teamsettings. Especifica as etapas de projeto de equipe. |
member |
Para obter informações sobre como especificar grupos padrão, consulte Macros de grupo e padrão grupos definidos no Team Foundation Server. |
O member é um elemento filho obrigatório de members. Especifica o nome de um grupo que você está adicionando como um membro de outro grupo. Você pode criar grupos e preenchê-los automaticamente com grupos padrão no Team Foundation Server, definido anteriormente projeto grupos e grupos e usuários no Active Directory. |
members |
|
O members é um elemento filho opcional de group. Especifica a coleção de membros a serem adicionados ao grupo. |
permission |
Onde as seguintes definições se aplicam a cada atributo:
|
O permission é um elemento filho obrigatório de permissions. Especifica a permissão para aplicar ao grupo. |
permissions |
|
O permissions é um elemento filho obrigatório de group. Especifica o conjunto de permissões para aplicar ao grupo. |
teamsettings |
|
O teamsettings é um elemento filho opcional de group. Configura o projeto de equipe como a equipe padrão e, opcionalmente, especifica metas da equipe com o iterationPath elemento. |
Consulte também
Conceitos
Configurar grupos iniciais, equipes, membros e permissões
Controlar o acesso às áreas funcionais
Gerenciar usuários ou grupos no TFS