Team Foundation Server 中的服务帐户和依赖项

如果了解每个 Team Foundation Server 部署包含的服务和若干服务帐户以及每个部署的依赖项,就可以更好地管理 Visual Studio Team Foundation Server。 根据安装和配置 Team Foundation Server 的方式,这些服务和服务帐户可能全部运行在一台计算机上,也可能运行在多台计算机上。

Team Foundation Server 在部署中包含在下列计算机上运行的服务和服务帐户:

  • 承载 Team Foundation Server 的一个或多个数据库的任何服务器

  • 承载 Team Foundation 的应用层组件的任何服务器

  • 运行 Team Foundation Server 代理的任何计算机

  • 任何生成计算机

  • 任何测试计算机

  • 运行 Visual Studio 实验室管理工具版 的一个或多个组件的任何计算机

您可以通过多种方式来安装和部署 Team Foundation 的不同功能。您的部署中的功能分布情况决定了物理计算机所运行的服务和服务帐户。 此外,您可能还需要管理配置为用于 Team Foundation Server 的软件程序的服务帐户,例如 SharePoint 产品和 SQL Server 的服务帐户。

主题内容

  • Team Foundation Server 的服务帐户

  • Team Foundation Server 与 Microsoft Office SharePoint Server 2007 之间的服务帐户交互

  • 在服务帐户下运行的服务

Team Foundation Server 的服务帐户

虽然 Team Foundation Server 使用多个服务帐户,但您可以对其中大多数或所有服务帐户使用同一域或工作组帐户。 例如,可以将同一个域帐户“Contoso\Example”同时用作 Team Foundation Server (TFSService) 的服务帐户和 SQL Server Reporting Services (TFSReports) 的数据源帐户。 但是,不同服务帐户的权限级别要求有所不同。 例如,TFSService 必须具有**“作为服务登录”权限,而 TFSReports 必须具有“允许在本地登录”**权限。 如果对它们使用同一个帐户“Contoso\Example”,则必须向该帐户授予这两个权限。 此外,与 TFSReports 所需的权限相比,TFSService 需要更多的权限才能正常运行,如本主题后面的表所示。 为安全起见,应考虑对这两个服务帐户使用不同的帐户。

重要说明重要事项

不能将用于安装 Team Foundation Server 的帐户用作这两个服务帐户中任意一个的帐户。

如果在 Active Directory 域中部署了 Team Foundation Server,则应该为服务帐户设置**“敏感帐户,不能被委派”**选项。 例如,在下表中,应对 TFSService 设置该选项。 有关 Team Foundation Server 文档中用到的所需服务帐户和占位符名称的更多信息,请参见 Team Foundation 安装指南中的主题“安装 Team Foundation 组件所需的帐户”。 有关如何在 Active Directory 中限制帐户委托的更多信息,请参见 Microsoft 网站上的以下网页:Enabling Delegated Authentication(启用委托身份验证)。

因为您必须管理多个服务帐户,所以各服务帐户由标识其功能的占位符名称(在本主题后面的表中列出)指代。 该占位符名称不是用于各服务帐户的帐户的实际名称。 帐户的实际名称因您的部署而异。 在前面的示例中,同时用于 TFSService 和 TFSReports 的帐户为“Contoso\Example”。在您自己的部署中,可以用“TFSService”和“TFSReports”的特定名称创建域帐户,也可以将系统帐户 Network Service 用作 Team Foundation Server 的服务帐户。

重要说明重要事项

除非另有特殊说明,否则下表中的任何组或帐户都不能是 Team Foundation Server 部署中任何服务器上的 Administrators 组的成员。

下表显示可用在 Team Foundation Server 部署中的所有服务帐户:

服务帐户

占位符名称和适用的帐户类型

所需权限和组成员资格

注释

Team Foundation Server 的服务帐户

TFS 服务,可以是本地帐户、域帐户、工作组中的 Local Service,或域中的 Network Service

  • 应用层服务器上的“作为服务登录”

  • Team Foundation Server 使用的任何 SharePoint Web 应用程序的 Farm Administrators 组1 

  • TFSExecRole;如果数据库不存在此角色,则为 Team Foundation Server 使用的下列角色的组合:

    • db_owner

    • db_create

此服务帐户用于 Team Foundation Server 的所有 Web 服务。 如果对此帐户使用域帐户,则该域帐户必须是部署中所有计算机均信任的域的成员。

SQL Server Reporting Services 的数据源帐户

TFSReports,可以是本地帐户、域帐户或工作组中的 Local Service

  • 应用层服务器及运行 SQL Server Reporting Services 的服务器上的“允许在本地登录”

  • 报表服务器上的 TFSWareHouseDataReader

此服务帐户从 Reporting Services 检索报表数据。

Team Foundation Build 的服务帐户

TFSBuild,可以是本地帐户、域帐户或工作组中的 Local Service

作为服务登录

在配置生成时以及在生成控制器和生成代理之间传输生成状态信息时使用此服务帐户。

实验室管理工具版 的服务帐户

TFSLab,可以是本地帐户、域帐户、工作组中的 Local Service 或域中的 Network Service

作为服务登录

在 Team Foundation Server 与在虚拟机上运行的实验室代理之间传输有关 实验室管理工具版 的信息时使用此服务帐户。

Team Foundation Server 代理的服务帐户

TFSProxy,可以是本地帐户、域帐户、工作组中的 Local Service 或域中的 Network Service

作为服务登录

此服务帐户用于所有代理服务。 如果对此帐户使用域帐户,则该域帐户必须是部署中所有计算机均信任的域的成员。

测试代理和测试代理控制器的服务帐户

TFSTest,可以是本地帐户、域帐户或域中的 Network Service。

作为服务登录

在测试代理控制器与测试代理之间传输有关测试的信息时使用此服务帐户。

SharePoint Web 应用程序的服务帐户

WebAppService

允许在本地登录

对于配置用于 Team Foundation Server 的各 SharePoint Web 应用程序,必须至少为其添加一个服务帐户。 此服务帐户用于创建团队项目门户网站及启用面板功能。

1 您可以在没有此权限的情况下将部署与 SharePoint 产品集成在一起,但如果该服务帐户不是 Farm Administrators 组的成员,则必须执行附加步骤。 有关更多信息,请参见在没有管理权限的情况下集成 Team Foundation Server 与 SharePoint 产品

Team Foundation Server 与 Microsoft Office SharePoint Server 2007 之间的服务帐户交互

如果 Team Foundation Server 部署使用 Microsoft Office SharePoint Server 2007,则还必须配置下表中的服务帐户和用户组,或者必须由服务器场管理员配置它们。 服务器场管理员还需要有关 Team Foundation Server 的服务帐户的信息。 有关更多信息,请参见配置面板兼容性设置。 服务器场管理员至少需要三个用作服务帐户的帐户,每个帐户的权限各不相同。 有关 SharePoint 产品中服务帐户的权限及其他要求的更多信息,请参见 Microsoft 网站上的以下主题:Plan for administrative and service accounts(规划管理帐户和服务帐户)。 有关如何在部署中配置这些帐户的示例,请参见SharePoint 产品和 Team Foundation Server 之间的交互中的“使用 Microsoft Office SharePoint Server 2007 的 Team Foundation Server 示例部署”。

提示

若要首次将单一登录配置为 Microsoft Office SharePoint Server 2007 与 Team Foundation Server 集成的一部分,则设置单一登录时所用的登录帐户需要特定权限。 有关更多信息,请参见配置面板兼容性设置中的“配置单一登录”一节。

说明

要求

也可以将此帐户用于下列用途:

服务器场管理员帐户(也称为数据库访问帐户)

  • 必须为域帐户

  • 必须是运行 SharePoint 产品的服务器上的 Administrators 组的成员

不能将此帐户用于任何其他用途。

Web 和 Search Services 帐户

  • 必须为域帐户

  • Office SharePoint Server Search Service 帐户

  • Web 应用程序池 – 端口 80

  • Windows SharePoint Services Search Service 帐户

  • Windows SharePoint Services Search 内容访问帐户

单一登录帐户

  • 必须为域帐户

  • 必须是运行 SharePoint 产品的服务器上的 Administrators 组的成员

  • 在承载 SharePoint 产品的数据库 SQL Server 实例上必须具有 db_creator

  • 必须在运行 SharePoint 产品的服务器上具有“允许在本地登录”权限

  • 必须是报表服务器上“TFSWareHouseDataReader”的成员

  • 单一登录服务帐户

  • Single Sign-On Administrator 帐户

Enterprise Application Definition Administrator 帐户

  • 必须为域帐户或域组

此帐户也可以是 Farm Administrators 组的成员。

Enterprise Application Definition 组(对于将为 Team Foundation Server 创建的定义)

  • 必须为域组

应为 PortalUsers(在本表稍后列出)配置同一组。

Enterprise Application Definition 帐户信息(将为 Team Foundation Server 创建的定义的存储凭据)

  • 在应用层服务器和报表服务器上拥有“允许在本地登录”权限

  • 报表服务器上的 TFSWareHouseDataReader

应使用为 TFSReports 配置的同一帐户。

需要访问团队门户网站的所有 Team Foundation Server 用户的一个或多个组 (PortalUsers)

  • Active Directory 域中的域组或单个服务器部署中的本地组

使用此组(或一系列组)管理 Team Foundation Server、Reporting Services 和 SharePoint 产品中用户的权限。 有关更多信息,请参见 Microsoft 网站上的以下网页:How to: Add Users to Team Projects(如何:向团队项目添加用户)。

在服务帐户下运行的服务

下列服务在 Team Foundation Server 部署中的服务帐户下运行:

服务名

服务帐户

逻辑层

代码覆盖率服务

TFSService

应用层

Team Foundation Server Web 服务

TFSService

应用层

SQL Server Reporting Services(MSSQLSERVER;如果使用的是命名实例,则为 实例名称)

Local System 或域帐户

应用层

报表 Web 服务

Local System、Network Service 或域帐户

应用层

Windows SharePoint Services 管理(如果安装了 SharePoint 产品并将其配置为用于 Team Foundation Server)

Local System、Network Service 或域帐户

应用层

Windows SharePoint Services Timer(如果安装了 SharePoint 产品并将其配置为用于 Team Foundation Server)

域帐户

应用层

Visual Studio Team Foundation 生成服务主机(如果安装了 Team Foundation Build)

TFSBuild

生成计算机

Visual Studio Team Foundation 后台作业代理

TFSService

应用层

Visual Studio 测试控制器

TFSTest

任何计算机

Visual Studio Test Agent

TFSTest

测试计算机

分析服务器(MSSQLSERVER;如果使用的是命名实例,则为 实例名称)

Local System 或域帐户

数据层

SQL Server Browser

Local System 或域帐户

数据层

SQL Server(MSSQLSERVER 或实例名称,如果在使用命名实例)

Local System 或域帐户

数据层

有关 SQL Server 的服务帐户的更多信息,请参见 Microsoft 网站上的以下网页:SQL Server 联机丛书。 若要了解有关 Team Foundation 中服务帐户的最新信息,请从 Microsoft 网站上的以下网页下载 Team Foundation 的安装指南:Installation Guide for Team Foundation(Team Foundation 安装指南)。

提示

如果更改 Team Foundation Build 的服务帐户,则必须确保新服务帐户是 Build Services 组的成员。 另外,还要确保该帐户对临时文件夹和 ASP.NET 临时文件夹具有读/写权限。 同样,如果更改 Team Foundation Server Proxy 服务的服务帐户,则必须确保该帐户是相应组的成员。 有关更多信息,请参见配置生成系统

请参见

任务

更改 SQL Server Reporting Services 的服务帐户或密码

更改 Team Foundation Server 的服务帐户或密码

其他资源

使用 TFSConfig 管理服务器配置