Compartir a través de


Arquitectura de seguridad de Team Foundation Server

Actualización: noviembre 2007

Para analizar y planear la seguridad de Team Foundation Server, debe tener en cuenta el nivel de aplicación de Team Foundation, el nivel de datos de Team Foundation, el nivel de cliente de Team Foundation, Team Foundation Build, el servidor proxy de Team Foundation Server y las interacciones entre estas entidades. Tendrá que saber qué servicios Web, bases de datos y modelos de objetos se utilizan. También deberá saber qué puertos y protocolos de red se utilizan de forma predeterminada y qué puertos de red se pueden personalizar.

Además de sus propios servicios, Team Foundation Server depende de otros servicios para funcionar. Para obtener más información sobre las dependencias de Team Foundation Server, vea Conceptos de seguridad de Team Foundation Server.

Modelo de objetos

Team Foundation Server incluye un modelo de objetos que permite la comunicación entre el nivel de cliente de Team Foundation y el nivel de aplicación de Team Foundation. Este modelo de objetos permite también que los integradores de software y otros proveedores personalicen y amplíen la funcionalidad de Team Foundation Server.

Modelo de objetos de Team Foundation Server

El modelo de objetos de Team Foundation Server es un conjunto de API administradas que incluyen las interfaces siguientes.

  • Servicios comunes de Team Foundation

    • Servicio de registro

    • Servicio de seguridad

    • Servicio de vinculación

    • Servicio de eventos

    • Servicio de clasificación

  • Modelo de objetos de control de versiones

  • Modelo de objetos de seguimiento de elementos de trabajo

  • Modelo de objetos de Team Foundation Build

El modelo de objetos de Team Foundation Server se documenta públicamente en la documentación de extensibilidad de Team Foundation Server en el Visual Studio SDK.

Servicios Web y bases de datos

Team Foundation Server incluye un conjunto de servicios web y bases de datos. Estos servicios y bases de datos se instalan y configuran de forma independiente en el nivel de aplicación, nivel de datos y nivel de cliente de Team Foundation. En las siguientes figuras se proporciona una descripción general de los servicios web, aplicaciones y bases de datos en Team Foundation Server y en los equipos cliente.

Nivel de aplicación

El nivel de aplicación de Team Foundation contiene los servicios web ASP.NET siguientes que corresponden al servidor proxy o a los modelos de objetos respectivos en el nivel de cliente. Estos servicios web no están concebidos para que los integradores de otros proveedores programen con ellos. La única excepción a esta directiva es el servicio web de MSBuild que se documenta en la documentación de extensibilidad de Team Foundation Server en el Visual Studio SDK.

  • Servicios comunes de Team Foundation.

    • Servicio Web de registro

    • Servicio Web de seguridad

    • Servicio Web de vinculación

    • Servicio Web de eventos

    • Servicio Web de clasificación

  • Servicio Web de control de versiones

  • Servicio Web de seguimiento de elementos de trabajo

  • Servicio web de Team Foundation Build

Nivel de los datos

El nivel de datos de Team Foundation está compuesto de los almacenes operativos siguientes dentro de SQL Server 2005. Incluye datos, procedimientos almacenados y otra lógica asociada. En general, estos almacenes operativos no están diseñados para que los integradores de otros proveedores los utilicen para programar.

  • Seguimiento de elementos de trabajo

  • Control de versiones

  • Servicios comunes de Team Foundation

  • Team Foundation Build

  • Almacén de datos de informes

Nivel de cliente

El nivel de cliente utiliza los mismos servicios web mostrados en el nivel de aplicación para comunicar con el nivel de aplicación de Team Foundation. Se comunica a través del modelo de objetos de Team Foundation Server. Además del modelo de objetos de Team Foundation Server, el nivel de cliente de Team Foundation está formado por los componentes de Visual Studio Industry Partners (VSIP), la integración con Microsoft Office, las interfaces de línea de comandos y un marco de trabajo de directivas de protección para la integración con Team Foundation Server y la integración personalizada. Para obtener más información sobre cómo ampliar y personalizar el nivel de cliente, consulte la documentación de extensibilidad en el Visual Studio SDK.

Información de configuración de Team Foundation Server

Como Team Foundation Server depende de SQL Server, SQL Server Reporting Services, Internet Information Services (IIS), el sistema operativo Windows y Windows SharePoint Services, la información de configuración de Team Foundation Server se almacena en cinco ubicaciones:

  • Almacenes de datos de Internet Information Services (IIS): el nivel de aplicación de Team Foundation

  • Archivos de configuración de Team Foundation Server (web.config, proxy.config): el nivel de aplicación de Team Foundation

  • Orígenes de datos de SQL Server Reporting Services (por ejemplo, datos de TFSREPORTS): el nivel de aplicación de Team Foundation

  • Base de datos de integración de Team Foundation Server: el nivel de datos de Team Foundation

  • Registro de Windows: niveles de aplicación, datos y cliente de Team Foundation

Al mantener una implementación de Team Foundation Server, debe tener en cuenta estos orígenes de configuración. Para realizar alguna modificación en la configuración, debe modificar información que está almacenada en varias ubicaciones en el nivel de aplicación. Debe cambiar también la información de configuración en los niveles de datos y de cliente. Team Foundation Server incluye varios programas de línea de comandos para ayudarle a realizar estas modificaciones. Sin embargo, en algunos casos tendrá que realizar también modificaciones manuales.

Sincronización de identidades de grupo entre Active Directory y Team Foundation Server

En implementaciones en las que Team Foundation Server se ejecuta en un dominio de Active Directory, la información de grupos e identidades se sincroniza cuando se produce alguno de los eventos siguientes:

  • Se inicia el servidor de nivel de aplicación de Team Foundation.

  • Un grupo de Active Directory se agrega a un grupo de Team Foundation Server.

  • Transcurre la cantidad de tiempo especificada en el archivo web.config. (El valor predeterminado es 1 hora).

Active Directory se sincroniza con Generic Security Services (GSS), que a su vez se sincroniza con Team Foundation Server. Las identidades cambiadas se propagan del servidor a los clientes. Según el intervalo de sincronización configurado en el archivo web.config y la naturaleza del cambio en los grupos y usuarios, es posible que los cambios realizados en los usuarios y grupos de Active Directory tarden algún tiempo en reflejarse en Team Foundation Server.

Grupos y permisos

Team Foundation Server tiene su propio conjunto de grupos predeterminados. Asimismo, tiene permisos que puede establecer en varios niveles. Puede crear grupos personalizados y personalizar permisos en cada grupo y cada nivel. Sin embargo, al agregar un usuario o grupo a Team Foundation Server, ese usuario o grupo no se agrega automáticamente a dos componentes de los que depende Team Foundation Server: Windows SharePoint Services y SQL Server Reporting Services. Debe agregar usuarios y grupos a esos programas y concederles los permisos adecuados para que funcionen correctamente en todas las operaciones de Team Foundation Server. Para obtener más información, vea Administrar usuarios y grupos, Administrar permisos Funciones de Windows SharePoint Services y Funciones de SQL Server Reporting Services.

Puertos y protocolos de red

De forma predeterminada, Team Foundation Server está configurado para utilizar puertos y protocolos de red específicos. El diagrama siguiente muestra el tráfico de red de Team Foundation Server en una implementación de ejemplo.

Configuración de la red predeterminada

De forma predeterminada, la comunicación entre el nivel de aplicación de Team Foundation, el nivel de datos de Team Foundation, los equipos de compilación y el servidor proxy de Team Foundation Server utilizan los puertos y protocolos de la lista siguiente. Si el número de puerto aparece seguido de un asterisco (*), puede personalizar ese puerto.

Servicio y nivel

Protocolo

Port

Nivel de aplicación: servicios Web

HTTP

8080

Nivel de aplicación: Administración de Windows SharePoint Services

HTTP

17012* (si se instala con Team Foundation Server); de lo contrario, se genera de forma aleatoria

Nivel de aplicación: Windows SharePoint Services y SQL Reporting Services

HTTP

80

Equipo de compilación: acceso remoto desde el servidor de nivel de la aplicación de Team Foundation

SOAP a través de HTTP

9191*

Nivel de datos

TCP de MS-SQL

1443*

Servidor proxy de Team Foundation Server: cliente a servidor proxy

HTTP

8081*

Servidor proxy de Team Foundation Server: servidor proxy a nivel de aplicación

HTTP

8080*

Nivel de cliente: Reporting Services

HTTP

80

Nivel de cliente: servicios Web

HTTP

8080*

Configuración de la red personalizable

Puede modificar Team Foundation Server para utilizar algunos puertos personalizados. Puede cambiar la comunicación entre el nivel de aplicación, en nivel de datos y el nivel de cliente, como se indica en la tabla anterior. A modo de ejemplo, en la tabla siguiente se describen los cambios en puertos de HTTP a HTTPS.

Nota:

Configurar Team Foundation Server para que utilice HTTPS y SSL es una tarea compleja que implica mucho más que habilitar puertos para el tráfico de red HTTPS. Para obtener más información, consulte Proteger Team Foundation Server con HTTPS y Secure Sockets Layer (SSL).

Servicio y nivel

Protocolo

Port

Nivel de aplicación: servicios Web con SSL

HTTPS

Configurado por el administrador

Nivel de aplicación: Administración de Windows SharePoint Services

HTTPS

Configurado por el administrador

Nivel de aplicación: Windows SharePoint Services y SQL Reporting Services

HTTPS

443

Nivel de cliente: Reporting Services

HTTPS

443

Nivel de cliente: servicios Web

HTTPS

Configurado por el administrador

Vea también

Conceptos

Conceptos de seguridad de Team Foundation Server

Permisos de Team Foundation Server

Otros recursos

Topologías de Team Foundation Server