Configurar grupos iniciales, miembros y permisos
Mediante el archivo de complemento para grupos y permisos, se puede definir la configuración de seguridad inicial para un proyecto de equipo. Para ello, se deben definir tareas a fin de crear grupos de seguridad, anidar grupos, asignar miembros a los grupos y permitir o denegar permisos concretos a cada grupo. Además de realizar estas tareas, se puede especificar la configuración de seguridad inicial para las áreas de nivel de colección, nivel de proyecto, clasificación de proyectos y suscripción de eventos.
Las plantillas de proceso de Microsoft Solutions Framework (MSF) asignan varios permisos a los grupos predeterminados. Para modificar estas asignaciones, se puede personalizar el archivo de complemento para grupos y permisos. Para obtener más información sobre este complemento, vea Complemento de grupos y permisos.
En este tema
Definir y asignar permisos a los grupos mediante los elementos Grupo, Miembro y Permiso de grupo
Macros de grupo y grupos predeterminados definidos en Team Foundation Server
Ejemplo de cómo anidar grupos y asignar miembros a los grupos
Asignar permisos de nivel de colección
Asignar permisos de nivel de proyecto
Asignar permisos para controlar las rutas de acceso a las áreas
Asignar permisos para controlar las rutas de acceso a las iteraciones
Asignar permisos para administrar las suscripciones de eventos
Para obtener información sobre cómo definir la configuración de seguridad inicial para las áreas funcionales de un proyecto de equipo, como Team Foundation Build, control de versiones de Team Foundation y Visual Studio Lab Management, vea Controlar el acceso a las áreas funcionales.
Para obtener información sobre cómo personalizar los tipos de elementos de trabajo para permitir o denegar el acceso a grupos o usuarios, vea Administrar permisos para crear o modificar elementos de trabajo.
Para obtener más información sobre cómo administrar los usuarios y grupos y controlar el acceso a Visual Studio Application Lifecycle Management (ALM), vea Configurar usuarios, grupos y permisos.
Definir y proteger los grupos mediante los elementos Grupo, Miembro y Permiso de grupo
Puede utilizar los elementos member y group para especificar un nuevo grupo de seguridad en Team Foundation Server y agregar miembros a ese grupo. Puede utilizar el elemento permission de grupo para asignar permisos a un grupo y a los miembros de ese grupo. Debe encapsular cada uno de estos elementos en sus correspondientes elementos contenedores: groups, members y permissions. Se usa la siguiente estructura sintáctica para cada uno de estos elementos:
<group name="Group Name" description="Description of Group"></group>
<member name="MemberName"></member>
<permission name="PermissionName" class="ClassName " allow="True | False"/>
En la tabla siguiente se describen los atributos de los elementos group, member y permission de grupo. Estos elementos se utilizan únicamente en el archivo de complemento de grupos y permisos.
Elemento |
Atributo |
Descripción |
---|---|---|
group |
name |
Especifica el nombre del grupo que se está creando. |
description |
Describe el propósito del grupo para otros usuarios. |
|
member |
name |
Especifica el nombre del grupo que se agrega como miembro de otro grupo. Puede crear grupos y rellenarlos previamente con cualquiera de los siguientes tipos de miembros:
Para obtener información sobre el formato que se debe utilizar al especificar grupos predeterminados, vea la sección Grupos predeterminados definidos en Team Foundation Server que figura más adelante en este tema. |
permission |
name |
Identifica el permiso que se está aplicando. Para obtener una lista de los permisos compatibles, vea las siguientes secciones que figuran más adelante en este tema:
|
class |
Identifica la clase, o área, donde se concede el permiso de grupo. Valores válidos son:
|
|
allow |
Utiliza el valor true o false para indicar si se concede o se deniega el permiso. |
|
path |
Identifica el nodo de la ruta de acceso de área o de la ruta de acceso de iteración donde se aplica el permiso. Este atributo solamente es válido cuando class se establece en CSS_NODE o ITERATION_NODE. |
Macros de grupo y grupos predeterminados definidos en Team Foundation Server
En la siguiente tabla se muestran las macros que se pueden utilizar para especificar un grupo predeterminado definido en Team Foundation Server.
Nota
Las macros de la siguiente tabla se pueden especificar únicamente en el complemento para grupos y permisos. No se pueden especificar cuando se asignan permisos utilizando los complementos para la compilación, el control de versiones o Lab Management.
Grupos predeterminados |
Macro |
---|---|
Project Collection Administrators |
[SERVER]\$$PROJECTCOLLECTIONADMINGROUP$$ [SERVER]\$$TEAMFOUNDATIONADMINGROUP$$ |
Project Collection Service Accounts |
[SERVER]\$$PROJECTCOLLECTIONSERVICESGROUP$$ |
Project Collection Build Service Accounts |
[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$ |
Project Collection Build Administrators |
[SERVER]\$$PROJECTCOLLECTIONBUILDADMINSGROUP$$ |
Project Administrators |
$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$ |
Ejemplo de cómo anidar grupos y asignar miembros a los grupos
En el siguiente ejemplo, se muestra cómo configurar los grupos TestGroup1, TestGroup2 y TestGroup3. En este ejemplo, se agrega TestGroup1 como miembro de TestGroup2. Para que este código sea válido, es preciso definir TestGroup1 antes de definir 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>
Asignar permisos de nivel de colección
Para asignar permisos de nivel de colección, se utilizan el elemento permission de grupo y la clase NAMESPACE. Estos permisos controlan el acceso a los recursos que están disponibles en los proyectos de equipo. Los permisos de nivel de colección se pueden establecer únicamente para las siguientes categorías de usuarios:
Usuarios y grupos en el nivel de colección, como Project Collection Administrators
Grupos de nivel de proyecto que se han agregado al nivel de colección en un servidor que ejecuta Team Foundation
Grupos personalizados que se crean y agregan al nivel de colección
Para obtener información sobre el formato que se debe usar al especificar grupos, vea la sección Grupos predeterminados definidos en Team Foundation Server que figura más adelante en este tema.
Nota
Para establecer estos permisos, haga clic con el botón secundario en el servidor en Team Explorer y, a continuación, haga clic en Seguridad, o abra y utilice la consola de administración de Team Foundation, o utilice las herramientas de la línea de comandos de TFSSecurity y tf. Para obtener más información, vea Grupos de nivel de colección, Cambiar grupos y permisos con TFSSecurity y Permission (Comando).
En el siguiente ejemplo, se muestra cómo conceder permisos de nivel de colección a los administradores de un proyecto de equipo.
<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>
En la siguiente tabla, se describen los permisos de nivel de colección que se pueden asignar.
Nota
De forma predeterminada, no se asignan permisos de nivel de colección en las plantillas de proceso de MSF.
Permiso |
Descripción |
---|---|
DIAGNOSTIC_TRACE |
Modificar configuración de seguimiento. Permite cambiar la configuración de seguimiento para recopilar información de diagnóstico más detallada sobre los servicios Web de Team Foundation Server. |
CREATE_PROJECTS |
Crear nuevos proyectos. Permite crear proyectos en la colección de proyectos de equipo. |
GENERIC_WRITE |
Editar información en el nivel de colección. Permite modificar los permisos de nivel de colección de los usuarios y grupos en la colección de proyectos de equipo. Los usuarios con este permiso pueden realizar las siguientes tareas:
Además, los usuarios que tienen este permiso pueden modificar los permisos para el control de versiones y tienen acceso de escritura a todos los archivos del control de versiones, a menos que otros permisos denieguen explícitamente su acceso. |
MANAGE_TEMPLATE |
Administrar plantilla de procesos. Permite descargar, crear, editar y cargar plantillas de proceso en la colección de proyectos de equipo. |
MANAGE_TEST_CONTROLLERS |
Administrar controladores de pruebas. Permite registrar y eliminar del registro controladores de pruebas para la colección de proyectos de equipo. |
MANAGE_LINK_TYPES |
Administrar tipos de vínculo de los elementos de trabajo. Permite agregar, quitar y cambiar los tipos de vínculo de los elementos de trabajo. |
GENERIC_READ |
Ver información de nivel de colección. Permite ver la pertenencia a los grupos en el nivel de colección y los permisos de esos usuarios. |
Asignar permisos de nivel de proyecto
Puede asignar permisos de nivel de proyecto en el archivo de complemento de grupos y permisos. Para asignar estos permisos, se utilizan el elemento permission de grupo y la clase PROJECT. Estos permisos controlan el acceso a los recursos de un solo proyecto. Puede conceder acceso a usuarios y grupos de Windows, grupos de Team Foundation y grupos anteriormente definidos en el archivo de complemento de grupos y permisos. Para obtener información sobre el formato que se debe usar al especificar grupos, vea la sección Grupos predeterminados definidos en Team Foundation Server que figura más adelante en este tema.
Nota
Una vez creado el proyecto de equipo, puede establecer estos permisos en Team Explorer; para ello, haga clic con el botón secundario del mouse en el proyecto, haga clic en Configuración del proyecto de equipo y, a continuación, haga clic en Seguridad. También puede establecer estos permisos mediante la herramienta de línea de comandos TFSSecurity. Para obtener más información, vea Administrar permisos.
En el siguiente ejemplo, se muestra cómo conceder varios permisos al grupo Contributors de un proyecto de equipo.
<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>
En la siguiente tabla, se describen los permisos de nivel de proyecto que se pueden asignar y se indican las asignaciones predeterminadas que se realizan en las plantillas de proceso de MSF.
Permiso |
Descripción |
Readers |
Contributors |
Builders |
---|---|---|---|---|
GENERIC_READ |
Ver información de nivel de proyecto. Permite ver la pertenencia a los grupos en el nivel de proyecto y los permisos de esos miembros. |
|||
VIEW_TEST_RESULTS |
Ver ejecuciones de pruebas. Permite ver los planes de pruebas en este nodo. |
|||
MANAGE_TEST_CONFIGURATIONS |
Administrar configuraciones de prueba. Permite crear y eliminar configuraciones de prueba del proyecto de equipo. |
|||
MANAGE_TEST_ENVIRONMENTS |
Administrar entornos de prueba. Permite crear y eliminar entornos de prueba del proyecto de equipo. |
|||
PUBLISH_TEST_RESULTS |
Crear ejecuciones de pruebas. Permite agregar y quitar resultados de pruebas, así como agregar o modificar ejecuciones de pruebas del proyecto de equipo. |
|||
DELETE_TEST_RESULTS |
Eliminar ejecuciones de pruebas. Permite eliminar una prueba programada del proyecto de equipo. |
|||
DELETE |
Eliminar proyecto de equipo. Permite eliminar de Team Foundation Server el proyecto para el cual el usuario tiene este permiso. |
|||
GENERIC_WRITE |
Editar información de nivel de proyecto. Permite modificar los permisos de nivel de proyecto de los usuarios y grupos de Team Foundation Server. |
Asignar permisos para controlar las rutas de acceso a las áreas
Puede asignar permisos para controlar el acceso a las definiciones de área mediante el elemento permission de grupo y la clase CSS_NODE. Estos permisos controlan el acceso a la estructura de clasificación de un solo proyecto. Puede conceder acceso a usuarios y grupos de Windows, grupos de Team Foundation y grupos anteriormente definidos en el archivo de complemento de grupos y permisos. Para obtener información sobre el formato que se debe utilizar al especificar grupos, vea la sección Grupos predeterminados definidos en Team Foundation Server que figura anteriormente en este tema.
Nota
Una vez creado el proyecto de equipo, puede establecer estos permisos en Team Explorer; para ello, haga clic con el botón secundario en el proyecto, haga clic en Áreas e iteraciones, haga clic en la pestaña Área y, a continuación, haga clic en Seguridad. Puede asignar permisos en nodos de diferentes niveles de la jerarquía. También puede establecer estos permisos mediante la herramienta de línea de comandos TFSSecurity. Para obtener más información, vea Administrar permisos.
En el siguiente ejemplo, se muestra cómo conceder varios permisos al grupo Contributors de un proyecto de equipo.
<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>
En la siguiente tabla, se describen los permisos que se pueden asignar para controlar el acceso a la estructura jerárquica de los nodos de área e iteración del proyecto. En la tabla también se indican las asignaciones predeterminadas que se realizan en las plantillas de proceso de MSF.
Nota
Algunas operaciones de seguimiento de elementos de trabajo requieren varios permisos. Por ejemplo, necesitará varios permisos para eliminar un nodo.
Permiso |
Descripción |
Readers |
Contributors |
Builders |
---|---|---|---|---|
GENERIC_READ |
Ver este nodo. Permite ver la configuración de seguridad de un nodo de área. |
|||
WORK_ITEM_READ |
Ver los elementos de trabajo en este nodo. Permite ver, pero no cambiar, los elementos de trabajo asignados a un nodo de área. |
|||
WORK_ITEM_WRITE |
Editar elementos de trabajo en este nodo. Permite modificar los elementos de trabajo asignados a un nodo de área. |
|||
MANAGE_TEST_PLANS |
Administrar planes de pruebas. Permite crear y modificar los planes de pruebas asignados a un nodo de área. Si no se han ejecutado planes de pruebas, también se pueden eliminar. |
|||
CREATE_CHILDREN |
Crear y ordenar nodos secundarios. Permite crear nodos de área. Los usuarios que tienen este permiso y el permiso GENERIC_WRITE pueden mover o cambiar el orden de cualquier nodo de área secundario. |
|||
DELETE |
Eliminar este nodo. Permite eliminar nodos de área. Los usuarios que tienen este permiso y el permiso GENERIC_WRITE para otro nodo pueden eliminar nodos de área y volver a clasificar los elementos de trabajo existentes del nodo eliminado. Si el nodo eliminado tiene nodos secundarios, también se eliminarán. |
|||
GENERIC_WRITE |
Editar este nodo. Permite establecer permisos y cambiar el nombre de los nodos de área. |
Asignar permisos para controlar las rutas de acceso a las iteraciones
Para asignar permisos que controlan el acceso a las rutas de acceso de las iteraciones, se utilizan el elemento permission de grupo y la clase ITERATION_NODE. Estos permisos controlan el acceso a las versiones de hito o las iteraciones de un solo proyecto. Puede conceder acceso a usuarios y grupos de Windows, grupos de Team Foundation y grupos anteriormente definidos en el archivo de complemento de grupos y permisos. Para obtener información sobre el formato que se debe utilizar al especificar grupos, vea la sección Grupos predeterminados definidos en Team Foundation Server que figura anteriormente en este tema.
Nota
Una vez creado el proyecto de equipo, puede establecer estos permisos en Team Explorer; para ello, haga clic con el botón secundario del mouse en el proyecto, haga clic en Áreas e iteraciones, haga clic en la pestaña Iteración y, a continuación, haga clic en Seguridad. Puede asignar permisos a nodos en diferentes niveles de la jerarquía. También puede establecer estos permisos mediante la herramienta de línea de comandos TFSSecurity. Para obtener más información, vea Administrar permisos.
En el siguiente ejemplo, se muestra cómo conceder varios permisos al grupo Contributors de un proyecto de equipo:
<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" />
</group>
En la siguiente tabla, se describen los permisos que se pueden asignar para controlar el acceso a la estructura jerárquica de los nodos de iteración del proyecto. Dado que las plantillas de proceso de MSF no especifican ningún permiso ITERATION_NODE, todos los miembros del equipo pueden crear, ver y eliminar los nodos de iteración.
Nota
Algunas operaciones de seguimiento de elementos de trabajo requieren varios permisos. Por ejemplo, necesitará varios permisos para eliminar un nodo.
Permiso |
Descripción |
---|---|
GENERIC_READ |
Ver este nodo. Permite ver la configuración de seguridad de un nodo. |
CREATE_CHILDREN |
Crear y ordenar nodos secundarios. Permite crear nodos de iteración. Los usuarios que tienen este permiso y el permiso GENERIC_WRITE pueden mover o cambiar el orden de cualquier nodo de iteración secundario. |
DELETE |
Eliminar este nodo. Permite eliminar nodos de iteración. Los usuarios que tienen este permiso y el permiso GENERIC_WRITE para otro nodo pueden eliminar nodos de iteración y volver a clasificar los elementos de trabajo existentes del nodo eliminado. Si el nodo eliminado tiene nodos secundarios, también se eliminarán. |
GENERIC_WRITE |
Editar este nodo. Permite establecer permisos y cambiar el nombre de los nodos de iteración. |
Asignar permisos para administrar las suscripciones de eventos
Para asignar permisos que controlan el acceso a las alertas de proyecto, se utilizan el elemento permission de grupo y la clase EVENT_SUBSCRIPTION. Estos permisos controlan el acceso al servicio de eventos de un solo proyecto de equipo. Puede conceder acceso a usuarios y grupos de Windows, grupos de Team Foundation y grupos anteriormente definidos en el archivo de complemento de grupos y permisos. Para obtener información sobre el formato que se debe utilizar al especificar grupos, vea la sección Grupos predeterminados definidos en Team Foundation Server que figura anteriormente en este tema.
En el siguiente ejemplo, se muestra cómo conceder varios permisos al grupo Contributors de un proyecto de equipo.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="EVENT_SUBSCRIPTION" allow="true" />
<permission name="GENERIC_WRITE" class=" EVENT_SUBSCRIPTION" allow="true" />
<permission name="UNSUBSCRIBE" class=" EVENT_SUBSCRIPTION" allow="true" />
</permissions>
</group>
En la siguiente tabla, se describen los permisos que se pueden asignar para controlar el acceso a las suscripciones de eventos.
Nota
De forma predeterminada, no se asignan permisos de suscripción de eventos en las plantillas de proceso de MSF. Todos los miembros del equipo pueden ver, suscribir y cancelar la suscripción a las alertas de proyecto.
Permiso |
Descripción |
---|---|
GENERIC_READ |
Puede ver las alertas. |
GENERIC_WRITE |
Permite cambiar la configuración de las alerta. |
UNSUBSCRIBE |
Permite cancelar la suscripción a las alertas. |
Vea también
Conceptos
Complemento de grupos y permisos
Configurar usuarios, grupos y permisos
Personalizar las áreas funcionales en una plantilla de proceso
Otros recursos
Controlar el acceso a las áreas funcionales
Administrar permisos para crear o modificar elementos de trabajo