Concepts sur la sécurité de Team Foundation Server
Mise à jour : novembre 2007
Pour sécuriser Team Foundation Server, vous devez comprendre le fonctionnement de Team Foundation Server et la façon dont il communique avec les autres composants Team Foundation. Un administrateur de Team Foundation Server doit connaître l'authentification Windows, les protocoles et le trafic réseau et la structure du réseau d'entreprise sur lequel Team Foundation Server est installé. L'administrateur doit également comprendre le fonctionnement des groupes et des autorisations de Team Foundation Server.
Fonctionnement de la Sécurité Team Foundation Server
Les concepts de sécurité de Team Foundation Server sont répartis en trois catégories générales : topologie, authentification et autorisation. La topologie inclut l'emplacement et la méthode de déploiement des serveurs de Team Foundation, le trafic réseau qui passe entre les clients de Team Foundation Server et de Team Foundation ainsi que les services qui doivent s'exécuter sur Team Foundation Server. L'authentification inclut la détermination de la validité des utilisateurs, des groupes et des services de Team Foundation Server. L'autorisation détermine si les utilisateurs, les groupes et les services de Team Foundation Server valides disposent des autorisations appropriées pour exécuter des actions. Vous devez également prendre en compte les dépendances de Team Foundation Server vis-à-vis d'autres composants et services pour optimiser la sécurité de Team Foundation Server sur votre réseau.
Lorsque vous déterminez la sécurité de Team Foundation Server, vous devez comprendre la différence entre authentification et autorisation. L'authentification correspond à la vérification des informations d'identification lors d'une tentative de connexion depuis un client, un serveur ou un processus. L'autorisation correspond à la vérification de l'identité tentant de se connecter pour savoir si elle dispose des autorisations d'accès à l'objet ou à la méthode. L'autorisation s'effectue toujours après authentification réussie. Si une connexion n'est pas authentifiée, elle échoue avant l'exécution d'un contrôle d'autorisation. Si l'authentification d'une connexion réussit, une action spécifique peut encore être rejetée parce que l'utilisateur ou le groupe n'avait pas l'autorisation d'exécuter cette action.
Topologies, ports et services de Team Foundation Server
Le premier élément de déploiement et de sécurité de Team Foundation Server consiste à savoir si les composants de votre déploiement de Team Foundation peuvent se connecter mutuellement pour communiquer. Votre objectif est d'activer les connexions entre les clients de Team Foundation et de Team Foundation Server et de limiter ou d'empêcher d'autres tentatives de connexion.
Le fonctionnement de Team Foundation Server dépend de certains ports et services. Ces ports peuvent être sécurisés et surveillés pour satisfaire les besoins en sécurité de l'entreprise. En fonction de votre déploiement de Team Foundation, vous devez permettre au trafic réseau de Team Foundation Server de passer entre les clients de Team Foundation, les serveurs qui hébergent les composants logiques des couches Application et Données de Team Foundation, les ordinateurs de builds de Team Foundation Build et les clients distants de Team Foundation à l'aide de Team Foundation Server Proxy. Par défaut, Team Foundation Server est configuré pour utiliser HTTP pour ses services Web. Pour obtenir une liste complète des ports et services de Team Foundation Server et savoir comment ils sont utilisés dans l'architecture de Team Foundation Server, consultez Architecture de sécurité de Team Foundation Server et Team Foundation Server, HTTPS et Secure Sockets Layer (SSL).
Vous pouvez déployer Team Foundation Server dans un domaine Active Directory ou un groupe de travail. Active Directory fournit des fonctionnalités de sécurité plus intégrées que les groupes de travail. Vous pouvez utiliser celles-ci pour mieux sécuriser votre déploiement de Team Foundation Server. Par exemple, vous pouvez configurer Active Directory pour interdire les noms d'ordinateurs en double pour empêcher tout utilisateur malveillant d'usurper le nom d'ordinateur avec un serveur Team Foundation Server non autorisé. Pour réduire l'effet de ce même type de menace dans un groupe de travail, vous devriez configurer des certificats d'ordinateur. Pour plus d'informations sur Team Foundation Server dans un domaine Active Directory, consultez Gestion de Team Foundation Server dans un domaine Active Directory. Pour plus d'informations sur Team Foundation Server dans un groupe de travail, consultez Gestion de Team Foundation Server dans un groupe de travail.
Il existe certaines contraintes de topologie relatives aux déploiements de Team Foundation Server indépendamment du fait que vous déployez Team Foundation Server dans un groupe de travail ou un domaine. Pour plus d'informations sur les topologies de Team Foundation Server, consultez Topologies de Team Foundation Server, Fonctionnement des produits et technologies SharePoint et Fonctionnement de SQL Server et de SQL Server Reporting Services.
Team Foundation Server prend intégralement en charge l'utilisation du protocole de sécurité Kerberos. Vous pouvez configurer Team Foundation Server pour qu'il prenne en charge Kerberos pour l'authentification mutuelle du client et du serveur après l'installation de Team Foundation Server.
Authentification
La sécurité de Team Foundation Server est intégrée avec et repose sur l'authentification Windows intégrée et les fonctionnalités de sécurité du système d'exploitation Windows. L'authentification intégrée Windows permet d'authentifier les comptes pour les connexions entre les clients de Team Foundation et de Team Foundation Server, pour les services Web sur les serveurs de couche Application et Données de Team Foundation Server logique et pour les connexions entre les serveurs de couche Application et Données de Team Foundation proprement dits.
Vous ne devez pas configurer de connexions de base de données SQL entre Team Foundation Server et Windows SharePoint Services pour utiliser l'authentification SQL Server. l'authentification SQL Server est moins sécurisée. Lorsque vous vous connectez à la base de données, le nom d'utilisateur et le mot de passe pour le compte d'administrateur de base de données sont envoyés de serveur à serveur sous un format non chiffré. L'authentification Windows intégrée n'envoie pas le nom d'utilisateur et le mot de passe. À la place, elle transfère les informations sur l'identité du compte de service associées au pool d'applications IIS de l'hôte à SQL Server à l'aide des protocoles de sécurité de l'authentification Windows intégrée.
Autorisation de Team Foundation Server
L'autorisation Team Foundation Server est basée sur les utilisateurs et les groupes de Team Foundation. Elle est également basée sur les autorisations assignées directement à ces utilisateurs et groupes ainsi que sur les autorisations que ces utilisateurs et groupes peuvent hériter en raison de leur appartenance à d'autres groupes de Team Foundation Server. Les utilisateurs et groupes de Team Foundation peuvent être des utilisateurs ou des groupes locaux, des utilisateurs ou des groupes Active Directory ou les deux.
Team Foundation Server est préconfiguré avec les groupes par défaut au niveau du serveur et du projet. Vous pouvez remplir ces groupes en utilisant des utilisateurs individuels. Toutefois, pour faciliter la gestion, vous pouvez souhaiter remplir ces groupes en utilisant des groupes de sécurité Active Directory. Cette méthode vous permet de gérer plus efficacement l'appartenance aux groupes et les autorisations sur plusieurs ordinateurs.
Votre déploiement spécifique peut requérir une configuration des utilisateurs, des groupes et des autorisations sur plusieurs ordinateurs et dans plusieurs applications. Par exemple, si vous souhaitez inclure des rapports et des portails de projet dans le cadre de votre déploiement, vous devez configurer des autorisations pour les utilisateurs et les groupes dans SQL Reporting Services, Windows SharePoint Services et Team Foundation Server. Sur Team Foundation Server, les autorisations peuvent être définies par projet et par serveur. En outre, certaines autorisations sont accordées par défaut à tous les utilisateurs ou groupes ajoutés à Team Foundation Server, dans la mesure où cet utilisateur ou ce groupe est ajouté automatiquement au groupe Team Foundation Valid Users. Pour plus d'informations sur la configuration des autorisations, consultez Gestion des autorisations. Pour plus d'informations sur les utilisateurs et les groupes de Team Foundation Server, consultez Gestion des utilisateurs et groupes.
Non seulement vous pouvez configurer des autorisations dans Team Foundation Server, mais vous pouvez également avoir besoin d'une autorisation dans le contrôle de code source et dans les éléments de travail. Ces autorisations sont gérées séparément au niveau de la ligne de commande, mais elles font partie intégrante de l'interface de Team Explorer. Pour plus d'informations sur les autorisations dans le contrôle de code source, consultez Contrôle de version Team Foundation. Pour plus d'informations sur la personnalisation d'élément de travail, consultez Utilisation d'éléments de travail Team Foundation.
Dépendances de Team Foundation Server
Outre ses propres services, Team Foundation Server nécessite certains services d'application Windows et autres sur ses serveurs de couche Application et de couche Données. Le tableau suivant détaille les services requis sur les serveurs qui hébergent la couche Application de Team Foundation logique.
Nom du service |
Description |
---|---|
Service Application Experience Lookup |
Ce service fait partie d'une infrastructure qui offre un moyen d'appliquer des corrections aux applications pour qu'elles s'exécutent sur les versions récentes des systèmes d'exploitation Windows ou des Service Packs. Ce service doit s'exécuter pour que l'application résolve le problème. |
Coordinateur de transactions distribuées |
Ce service coordonne des transactions qui mettent à jour plusieurs ressources protégées par transaction, telles que les bases de données, les files d'attente de messages et les systèmes de fichiers. Ces ressources protégées par transaction peuvent se trouver sur un seul ordinateur ou être distribuées dans plusieurs ordinateurs du réseau. |
Client DNS |
Ce service est utilisé pour résoudre des noms de domaines DNS. |
Journal des événements |
Ce service enregistre des événements sur le système d'exploitation en écrivant sur un, deux ou trois journaux par défaut que vous pouvez lire dans Observateur d'événements : sécurité, application et journaux système. |
Service IIS Admin |
Ce service gère la métabase IIS. |
Ouverture de session réseau |
Ce service vérifie les requêtes d'ouverture de session et contrôle la réplication au niveau du domaine de la base de données des comptes d'utilisateurs. |
Connexions réseau |
Ce service (également connu sous le nom de service NetMan) gère toutes les connexions réseau créées et configurées dans les connexions réseau du Panneau de configuration et est chargé d'afficher l'état de réseau dans la zone de notification sur le bureau. |
NLA (Network Location Awareness) |
Ce service collecte et stocke des informations sur la configuration du réseau, telles que les modifications apportées aux noms et aux emplacements des adresses IP et des noms de domaines. |
Appel de procédure distante (RPC) |
Ce service représente un mécanisme de communication interprocessus (IPC) sécurisé qui active les échanges de données et les appels de fonctionnalités qui résident dans un processus différent. Ce processus différent peut se trouver sur le même ordinateur, sur le réseau local (LAN) ou sur Internet. Le service Appel de procédure distante sert de mappeur de point de terminaison RPC (EPM) et de Gestionnaire de contrôle des services (SCM). |
Report Server (MSSSQLSERVER) |
Ce service gère le protocole SOAP (Simple Object Access Protocol) et les requêtes d'URL, traite des rapports, fournit un instantané et établit un rapport de la gestion de cache et prend en charge et applique des stratégies de sécurité et une autorisation. |
Gestionnaire des comptes de sécurité (SAM) |
Ce service gère des informations de compte d'utilisateur contenant les groupes auxquels un utilisateur appartient. |
Windows Management Instrumentation |
Ce service démarre et arrête le gestionnaire d'objets CIM (Common Information Model). |
Horloge Windows |
Ce service (également connu sous le nom de W32Time) synchronise la date et l'heure sur tous les ordinateurs s'exécutant sur un réseau Windows Server 2003. |
Service de publication World Wide Web |
Ce service représente un gestionnaire de configuration en mode utilisateur et de processus qui gère les composants IIS qui traitent des requêtes HTTP et exécutent des applications Web et vérifie périodiquement des applications Web pour déterminer si elles se sont arrêtées de façon inattendue. |
Le tableau suivant détaille les services requis sur les serveurs qui hébergent la couche Données de Team Foundation logique.
Nom du service |
Description |
---|---|
Service Application Experience Lookup |
Ce service fait partie d'une infrastructure qui offre un moyen d'appliquer des corrections aux applications pour qu'elles s'exécutent sur les versions récentes des systèmes d'exploitation Windows ou des Service Packs. Ce service doit s'exécuter pour que l'application résolve le problème. |
Coordinateur de transactions distribuées |
Ce service coordonne des transactions qui mettent à jour plusieurs ressources protégées par transaction, telles que les bases de données, les files d'attente de messages et les systèmes de fichiers. Ces ressources protégées par transaction peuvent se trouver sur un seul ordinateur ou être distribuées dans plusieurs ordinateurs du réseau. |
Client DNS |
Ce service est utilisé pour résoudre des noms de domaines DNS. |
Journal des événements |
Ce service enregistre des événements sur le système d'exploitation en écrivant sur un, deux ou trois journaux par défaut que vous pouvez lire dans Observateur d'événements : sécurité, application et journaux système. |
Ouverture de session réseau |
Ce service vérifie les requêtes d'ouverture de session et contrôle la réplication au niveau du domaine de la base de données des comptes d'utilisateurs. |
Connexions réseau |
Ce service (également connu sous le nom de service NetMan) gère toutes les connexions réseau créées et configurées dans les connexions réseau du Panneau de configuration et est chargé d'afficher l'état de réseau dans la zone de notification sur le bureau. |
NLA (Network Location Awareness) |
Ce service collecte et stocke des informations sur la configuration du réseau, telles que les modifications apportées aux noms et aux emplacements des adresses IP et des noms de domaines. |
Appel de procédure distante (RPC) |
Ce service représente un mécanisme de communication interprocessus (IPC) sécurisé qui active les échanges de données et les appels de fonctionnalités qui résident dans un processus différent. Ce processus différent peut se trouver sur le même ordinateur, sur le réseau local (LAN) ou sur Internet. Le service Appel de procédure distante sert de mappeur de point de terminaison RPC (EPM) et de Gestionnaire de contrôle des services (SCM). |
Gestionnaire des comptes de sécurité (SAM) |
Ce service gère des informations de compte d'utilisateur contenant les groupes auxquels un utilisateur appartient. |
SQL Analysis Server (MSSQLSERVER) |
Ce service crée et gère les cubes OLAP et les modèles d'exploration de données. |
SQL Server FullText Search (MSSQLSERVER) |
Ce service crée des index de texte intégral sur le contenu et permet des recherches de texte intégral sur les éléments de travail. |
Windows Management Instrumentation |
Ce service démarre et arrête le gestionnaire d'objets CIM (Common Information Model). |
Horloge Windows |
Ce service (également connu sous le nom de W32Time) synchronise la date et l'heure sur tous les ordinateurs s'exécutant sur un réseau Windows Server 2003. |
Voir aussi
Concepts
Architecture de sécurité de Team Foundation Server
Gestion de Team Foundation Server dans un groupe de travail
Contrôle de version Team Foundation
Utilisation d'éléments de travail Team Foundation
Autres ressources
Gestion de Team Foundation Server dans un domaine Active Directory
Gestion des utilisateurs et groupes
Droits et autorisations relatifs à la sécurité du contrôle de code source