Architecture de sécurité de Team Foundation Server
Mise à jour : novembre 2007
Pour analyser et planifier la sécurité de Team Foundation Server, vous devez d'abord prendre en compte la couche Application de Team Foundation, la couche Données de Team Foundation, la couche cliente de Team Foundation, Team Foundation Build, Team Foundation Server Proxy et les interactions entre ces entités. Vous devrez savoir quels services Web, bases de données et modèles objet sont utilisés. Vous devez également savoir quels ports réseau et protocoles sont utilisés par défaut et quels ports réseau peuvent être personnalisés.
Outre ses propres services, Team Foundation Server dépend d'autres services pour fonctionner. Pour plus d'informations sur les dépendances Team Foundation Server, consultez Concepts sur la sécurité de Team Foundation Server.
Modèle objet
Team Foundation Server inclut un modèle objet qui active la communication entre la couche cliente de Team Foundation et la couche Application de Team Foundation. Ce modèle objet permet également aux intégrateurs de logiciel et à des tiers de personnaliser et d'étendre les fonctionnalités de Team Foundation Server.
Modèle objet de Team Foundation Server
Le modèle objet de Team Foundation Server représente un ensemble d'API managées qui incluent les interfaces suivantes.
Services communs de Team Foundation
Service d'inscription
Service de sécurité
Service de liaison
Service d'événement
Service de classification
Modèle objet de contrôle de version
Modèle objet Suivi des éléments de travail
Modèle objet de Team Foundation Build
Le modèle objet de Team Foundation Server est présenté publiquement dans la documentation sur l'extensibilité de Team Foundation Server dans le Kit de développement Visual Studio SDK.
Services Web et bases de données
Team Foundation Server inclut un jeu de services Web et de bases de données. Ces services et bases de données sont installés et configurés séparément sur la couche Application, la couche Données et la couche cliente de Team Foundation. Les illustrations suivantes fournissent une vue d'ensemble des services Web, des applications et des bases de données sur Team Foundation Server et sur les ordinateurs clients.
Couche Application
La couche Application de Team Foundation contient les services Web ASP.NET suivants qui correspondent aux proxies ou modèles objets respectifs sur la couche cliente. Ces services Web ne sont pas destinés aux intégrateurs tiers à des fins de programmation. Une exception à cette stratégie est le service Web MSBuild présenté dans la documentation sur l'extensibilité de Team Foundation Server dans le Kit de développement Visual Studio SDK.
Services communs de Team Foundation
Service Web d'inscription
Service Web de Sécurité
Service Web de liaison
Service Web d'événement
Service Web de classification
Service Web de contrôle de version
Service Web de suivi des éléments de travail
Service Web de Team Foundation Build
Couche Données
La couche Données de Team Foundation se compose des magasins opérationnels suivants dans SQL Server 2005. Cela comprend des données, des procédures stockées et autre logique associée. Ces magasins opérationnels ne sont pas généralement prévus pour la programmation d'intégrateurs tiers.
Suivi des éléments de travail
Contrôle de version
Services communs de Team Foundation
Team Foundation Build
Entrepôt de création de rapports
Couche cliente
La couche cliente utilise les mêmes services Web répertoriés dans la couche Application pour communiquer avec la couche Application de Team Foundation. Il communique via le modèle objet de Team Foundation Server. Outre le modèle objet de Team Foundation Server, la couche cliente de Team Foundation se compose de composants de Visual Studio Industry Partners (VSIP), d'une intégration Microsoft Office, d'interfaces de ligne de commande et d'une infrastructure de stratégie d'archivage pour l'intégration avec Team Foundation Server et l'intégration personnalisée. Pour plus d'informations sur l'extension et la personnalisation de couche cliente, consultez la documentation sur l'extensibilité dans le Kit de développement Visual Studio SDK.
Informations de configuration de Team Foundation Server
Étant donné que Team Foundation Server dépend de SQL Server, de SQL Server Reporting Services, des services IIS (Internet Information Services), du système d'exploitation Windows et de Windows SharePoint Services, les informations de configuration pour Team Foundation Server sont stockées dans cinq emplacements :
Les magasins de données des services IIS - couche Application de Team Foundation
Les fichiers de configuration de Team Foundation Server (web.config, proxy.config) - couche Application de Team Foundation
Les sources de données SQL Server Reporting Services (par exemple, données TFSREPORTS) - couche Application de Team Foundation
La base de données d'intégration de Team Foundation Server - couche de données de Team Foundation
Le Registre Windows - couches Application, Données et cliente de Team Foundation
Lorsque vous maintenez un déploiement de Team Foundation Server, vous devez prendre en compte ces sources de configuration. Pour modifier la configuration, vous devez modifier les informations stockées dans plusieurs emplacements sur la couche Application. Vous devez également modifier les informations de configuration sur les couches Données et cliente. Team Foundation Server inclut plusieurs utilitaires en ligne de commande pour vous aider à effectuer ces modifications. Toutefois, dans certains cas, il est nécessaire d'apporter des modifications manuellement.
Synchronisation d'identités de groupe entre Active Directory et Team Foundation Server
Dans les déploiements où Team Foundation Server s'exécute dans un domaine Active Directory, les informations de groupe et d'identité sont synchronisées lorsque l'un des événements suivants se produit :
Le serveur de couche Application de Team Foundation démarre.
Un groupe Active Directory est ajouté à un groupe dans Team Foundation Server.
La durée spécifiée dans le fichier web.config s'écoule. (La valeur par défaut est 1 heure.)
Active Directory se synchronise avec les services GSS (Generic Security Services), qui se synchronisent ensuite avec Team Foundation Server. Les identités modifiées sont propagées du serveur aux clients. En fonction de l'intervalle de synchronisation configuré dans le fichier web.config et de la nature de la modification apportée aux groupes et aux utilisateurs, la prise en compte des modifications apportées aux utilisateurs et aux groupes Active Directory dans Team Foundation Server peut prendre un certain temps.
Groupes et autorisations
Team Foundation Server a son propre ensemble de groupes par défaut. De même, il dispose d'autorisations que vous pouvez définir à plusieurs niveaux. Vous pouvez créer des groupes personnalisés et personnaliser des autorisations au niveau des groupes et des individus. Toutefois, lorsque vous ajoutez un utilisateur ou un groupe à Team Foundation Server, cet utilisateur ou ce groupe n'est pas automatiquement ajouté aux deux composants dont dépend Team Foundation Server : Windows SharePoint Services et SQL Server Reporting Services. Vous devez ajouter des utilisateurs et des groupes à ces programmes et accorder les autorisations appropriées pour que ces utilisateurs ou groupes fonctionnent dans toutes les opérations Team Foundation Server. Pour plus d'informations, consultez Gestion des utilisateurs et groupes, Gestion des autorisations, Rôles de Windows SharePoint Services et Rôles SQL Server Reporting Services.
Ports réseau et protocoles
Par défaut, Team Foundation Server est configuré pour utiliser des ports réseau et des protocoles réseau spécifiques. Le diagramme suivant illustre le trafic réseau de Team Foundation Server dans un déploiement d'exemple.
Paramètres réseau par défaut
Par défaut, les communications entre la couche Application de Team Foundation, la couche Données de Team Foundation, les ordinateurs de build et le proxy Team Foundation Server utilisent les protocoles et les ports de la liste suivante. Si le numéro de port est suivi d'un astérisque (*), vous pouvez personnaliser ce port.
Service et couche |
Protocole |
Port |
---|---|---|
Couche Application - Services Web |
HTTP |
8080 |
Couche Application - Administration de Windows SharePoint Services |
HTTP |
17012* (si installé avec Team Foundation Server) ; sinon, généré de manière aléatoire |
Couche Application - Windows SharePoint Services et SQL Reporting Services |
HTTP |
80 |
Ordinateur de build - accès distant depuis le serveur de couche Application de Team Foundation |
SOAP sur HTTP |
9191* |
Couche Données |
MS-SQL TCP |
1443* |
Team Foundation Server Proxy : client à proxy |
HTTP |
8081* |
Team Foundation Server Proxy : proxy à couche Application |
HTTP |
8080* |
Couche cliente - Reporting Services |
HTTP |
80 |
Couche cliente - Services Web |
HTTP |
8080* |
Paramètres réseau personnalisables
Vous pouvez modifier Team Foundation Server pour qu'il utilise des ports personnalisés. Vous pouvez modifier les communications entre la couche Application, la couche Données et la couche cliente tel que décrit dans le tableau précédent. À titre d'exemple, le tableau suivant décrit des modifications apportées aux ports de HTTP à HTTPS.
Remarque : |
---|
La configuration de Team Foundation Server pour utiliser HTTPS et SSL est une tâche complexe qui implique bien plus que l'activation des ports pour le trafic réseau HTTPS. Pour plus d'informations, consultez Sécurisation de Team Foundation Server avec HTTPS et Secure Sockets Layer (SSL). |
Service et couche |
Protocole |
Port |
---|---|---|
Couche Application - Services Web avec SSL |
HTTPS |
Configuré par l'administrateur |
Couche Application - Administration de Windows SharePoint Services |
HTTPS |
Configuré par l'administrateur |
Couche Application - Windows SharePoint Services et SQL Reporting Services |
HTTPS |
443 |
Couche cliente - Reporting Services |
HTTPS |
443 |
Couche cliente - Services Web |
HTTPS |
Configuré par l'administrateur |
Voir aussi
Concepts
Concepts sur la sécurité de Team Foundation Server
Autorisations de Team Foundation Server