Team Foundation Server 权限和安全性疑难解答

更新:2007 年 11 月

Team Foundation Server 安全性活动包括以下内容:

  • 向 Team Foundation Server 用户、组和 Web 服务分配相应权限

  • 集成 Windows 身份验证功能

  • 帮助确保网络端口及每个 Team Foundation 客户端与 Team Foundation 服务器之间的通信的安全

本主题列出了其中一些较为常见的安全性问题及其解决方法。

如果在查看这些提示之后仍无法解决问题,请访问 Microsoft 网站上的 Microsoft Visual Studio Team System 技术论坛。这些论坛提供关于各种疑难解答主题的可搜索线索,并且受我们监控。因此您可以收到关于您的问题的快速答复。

  • 用户无法访问团队项目门户

  • 用户无法访问报告

  • 无法添加用户或组

  • 添加的用户或组没有在 Team Foundation Server 中显示

  • 添加的用户或组无法访问 Team Foundation Server

  • 为用户或组更改的权限似乎在 Team Foundation Server 中不起作用

  • 为 Team Foundation Server 组更改的成员资格没有立即生效

  • Team Foundation 应用层服务器和 Team Foundation 数据层服务器无法通信

  • Team Foundation 客户端无法连接 Team Foundation Server

  • Team Foundation Server Proxy 客户端与 Team Foundation Server 不同步

  • 自定义 Team Foundation Server 组不按预期工作

  • 为用户或组更改的权限似乎在 Team Foundation Server 中不起作用

  • Team Foundation Server 服务帐户没有权限读取源代码管理文件

用户无法访问团队项目门户

症状:   尝试访问团队项目门户时收到错误。

可能的原因:

  • 您可能是手动键入的项目门户 URL,发生了键入错误。在团队资源管理器中右击项目,再单击“显示项目门户”。

  • Team Foundation 应用层服务器上的 Internet 信息服务可能已停止。若要验证 Internet 信息服务是否正在运行,请在 Team Foundation 应用层服务器上依次单击“开始”、“管理工具”和“Internet 信息服务”,然后检查服务器是否已停止。有关更多信息,请参见 Microsoft 网站上的“Internet Information Services Technology Center”(Internet 信息服务技术中心)。

  • Internet 信息服务中可能停止了用于 Windows SharePoint Services 的应用程序池。在 Internet 信息服务中,确保该应用程序池正在运行。

  • 您可能在 Windows SharePoint Services 中没有相应权限。向 Team Foundation Server 添加用户或组时,还必须将它们添加到 Windows SharePoint Services 和 SQL Server Reporting Services。有关更多信息,请参见管理权限

  • 您所使用的团队资源管理器版本是包含在 Microsoft Visual Studio 2005 Team Foundation Server 中的版本。将 Team Foundation Server 配置为使用 Windows SharePoint Services 3.0 时,团队资源管理器和 Team System 2008 Team Foundation Server 的原始版本存在一个已知问题。您可以从 Microsoft 支持服务获取相应的修补程序,或者将团队资源管理器升级到 Team System 2008 Team Foundation Server。有关更多信息,请参见团队资源管理器的版本兼容性Team Foundation Server 的版本兼容性

用户无法访问报告

症状:   尝试打开或访问团队资源管理器中的报告时收到错误。

可能的原因:

  • 您可能在 SQL Reporting Services 中没有相应权限。向 Team Foundation Server 添加用户或组时,还必须将它们添加到 Windows SharePoint Services 和 SQL Reporting Services。有关更多信息,请参见管理权限Team Foundation 报告疑难解答

  • Team Foundation 应用层服务器上的 Internet 信息服务可能已停止。若要验证 Internet 信息服务是否正在运行,请在 Team Foundation 应用层服务器上依次单击“开始”、“管理工具”和“Internet 信息服务”,然后检查服务器是否已停止。有关更多信息,请参见 Microsoft 网站上的“Internet Information Services Technology Center”(Internet 信息服务技术中心)。

  • Internet 信息服务中可能停止了用于 Reporting Services 的应用程序池。在 Internet 信息服务中,确保 Reporting Services 应用程序池正在运行。

    说明:

    对于 SQL Server 2005,可以在 Internet 信息服务 (IIS) 中管理 ReportServer 和报表管理器网站,但对于 SQL Server 2008 则不可以。

无法将用户或组添加到 Team Foundation Server

症状:   某个域用户或组未显示在“Windows 用户或组”对话框中。

可能的原因:

添加的用户或组没有在 Team Foundation Server 中显示

症状:   最近添加的用户或组没有在该用户或组添加到的服务器或项目中显示。

可能的原因:

  • 您必须将至少一个权限设置为“允许”或“拒绝”,才能成功将用户或组添加到 Team Foundation Server。如果您添加用户或组但没有将至少一个权限设置为“允许”或“拒绝”(即,将所有权限保留为未设置),该用户或组将不会添加到 Team Foundation Server,并且不会显示错误消息或警告。有关更多信息,请参见管理用户和组Team Foundation Server 权限

添加的用户或组无法访问 Team Foundation Server

症状:   最近添加的用户或组无法访问 Team Foundation Server 工作项、源代码、项目门户或报告。

说明:

请考虑将用户和组添加到 Team Foundation Server 组,而不是添加到项目或服务器。有关更多信息,请参见管理用户和组

可能的原因:

  • 在存在多个 Team Foundation Server 的环境中,用户可能尝试访问对其任何项目都没有权限的 Team Foundation Server。请确保用户针对项目访问正确的 Team Foundation Server。

  • 用户或组可能属于没有访问 Team Foundation Server 所需的信任关系的不同的域或工作组。有关更多信息,请参见管理 Active Directory 域中的 Team Foundation Server在工作组中管理 Team Foundation Server

  • 您添加的用户或组只有“Administer Shelvesets”权限设置为“允许”或“拒绝”。此权限存在一个已知问题:如果要添加的用户或组只将此权限设置为“允许”,则该用户或组将不会正确添加到“Team Foundation Valid Users”组,因此无法访问 Team Foundation Server。请查看该用户或组是否显示在“Team Foundation Valid Users”列表中,并确保添加用户或组时,除了“Administer Shelvesets”权限,还为该用户或组将其他权限设置为“允许”或“拒绝”。有关更多信息,请参见管理用户和组如何:查看现有用户Team Foundation Server 权限

  • 用户或组可能没有 SharePoint 产品和技术和 Reporting Services 中的相应权限。将用户或组添加到 Team Foundation Server 时,还必须将该用户或组添加到 SharePoint 产品和技术和 Reporting Services。有关更多信息,请参见管理权限

为用户或组更改的权限在 Team Foundation Server 中不起作用

症状:   现有用户或组需要更改其权限。为该用户或组更改权限后,该用户或组在功能上没有立即出现变化。

可能的原因:

  • 更改权限后,Team Foundation Server 可能需要一到两分钟才能完成同步。如果 Team Foundation 数据层服务器与 Team Foundation 应用层服务器之间存在显著的网络延迟,将需要更长的同步时间。请用户或组等待几分钟,然后重试该操作。有关更多信息,请参见 Team Foundation Server 权限Team Foundation Server 安全结构

为 Team Foundation Server 组更改的成员资格没有立即生效

症状:   管理员从 Team Foundation Server 组中添加或移除用户,但该用户的成员资格状态没有立即显示出更改。

可能的原因:

  • 更改组成员资格后,Team Foundation Server 可能需要一到两分钟才能完成同步。如果 Team Foundation 数据层服务器与 Team Foundation 应用层服务器之间(在使用 Active Directory 安全组时,还包括 Team Foundation Server 与安全组所在的域控制器之间)存在显著的网络延迟,则需要更长的同步时间。

    • 请等待数分钟,然后重试操作。

    • 在 Active Directory 部署中,可以使用 gpupdate/force 命令行工具强制更新 Active Directory 安全组。

    • 如果使用 Active Directory 安全组并且经常更改这些组的成员资格,则可以配置 Team Foundation Server,以使之更频繁地与 Active Directory 同步。默认情况下,Active Directory 每小时同步一次。您可以提高此频率,方法是更改 web.config 文件并向 IdenityUpdatePeriod 部分添加 appSettings 键。将 appSettings 的值设置为所需频率。默认值为 1 小时,即 1:0:0。

    • 有关更多信息,请参见 Microsoft 网站上的“gpupdate”以及如何:更改 Team Foundation Server 组件的配置设置Team Foundation Server 权限Team Foundation Server 安全结构

Team Foundation 应用层服务器和 Team Foundation 数据层服务器无法通信

症状: 以双服务器部署运行 Team Foundation Server 时,无法创建项目或执行工作。您在尝试大部分服务器操作时都会收到错误消息。

可能的原因:

  • Team Foundation 数据层和 Team Foundation 应用层之间的防火墙或网络路由器阻止两个服务器之间的网络通信。请确保所有所需端口都配置为启用网络通信。有关更多信息,请参见 Team Foundation Server 安全结构

  • Team Foundation 应用层服务器和 Team Foundation 数据层服务器之间的网络连接过慢。可能是网络通信过多以至于路由器无法有效处理,或者 Team Foundation 服务器上的一个或多个网卡配置不正确。网络交换机和您的计算机网卡的配置会影响网络速度。请确认这些设置正确。有关如何使用网卡的自动检测设置的更多信息,请参见 Microsoft 网站。有关网卡设置的更多信息,请参见制造商的文档。

  • Team Foundation 数据层服务器和 Team Foundation 应用层服务器位于没有足够信任的不同 Active Directory 域或林中。您必须为 Team Foundation Server 部署配置相应的信任。有关更多信息,请参见有关 Team Foundation Server 的信任和目录林的注意事项

  • Team Foundation 应用层服务器、Team Foundation 数据层服务器或者两个服务器都处于工作组而不是域中。不支持这些配置。工作组环境中只支持单服务器部署。

Team Foundation 客户端无法连接 Team Foundation Server

症状: 拥有类似团队资源管理器的 Team Foundation 客户端的用户无法连接 Team Foundation Server。

可能的原因:

  • 一个或多个 Team Foundation Server 服务已停止,或者安装 Team Foundation Server 的服务器脱机。请检查以确保服务器已连接到网络,并且所有必需的 Team Foundation Server 服务都在运行。有关更多信息,请参见 Team Foundation Server 安全概念Team Foundation Server 安全结构

  • Team Foundation 客户端和 Team Foundation Server 之间的防火墙或网络路由器阻止 Team Foundation Server 和客户端之间的网络通信。请确保所有所需端口都配置为启用网络通信。有关更多信息,请参见 Team Foundation Server 安全结构

  • Team Foundation Server 所处的 Active Directory 域或林不信任 Team Foundation 客户端的域。您必须为 Team Foundation Server 部署配置相应的信任。有关更多信息,请参见有关 Team Foundation Server 的信任和目录林的注意事项不受支持的域配置

  • Team Foundation 客户端位于工作组而不是域中,但 Team Foundation Server 在域中部署。本地用户帐户必须在 Team Foundation 客户端计算机上创建。如果不想要求用户在每次 Team Foundation 客户端必须连接 Team Foundation Server 时都键入用户名和密码,请确保本地用户帐户使用的用户名和密码与域用户名相同。有关更多信息,请参见在工作组中管理 Team Foundation Server

  • Team Foundation Server 在工作组中部署,但 Team Foundation 客户端在域中部署。对于需要访问 Team Foundation 服务器的所有用户,都必须在该服务器上为其创建本地用户帐户。有关更多信息,请参见在工作组中管理 Team Foundation Server

  • 没有为纯工作组 Team Foundation Server 部署中的所有计算机创建本地用户帐户。对于需要访问 Team Foundation 服务器的所有用户,都必须在该服务器上为其创建本地用户帐户。本地用户帐户必须添加到 Team Foundation Server 服务器级和项目级的组中,这样用户才能在 Team Foundation 服务器上获得授权。有关更多信息,请参见在工作组中管理 Team Foundation Server

  • 一个或多个客户端计算机上的团队资源管理器版本与 Team Foundation Server 的版本不匹配。请确保所有的 Team Foundation 客户端都使用与 Team Foundation Server 部署相同的发布版本。

  • 您所使用的团队资源管理器版本是包含在 Microsoft Visual Studio 2005 Team Foundation Server 中的版本。将 Team Foundation Server 配置为使用 Windows SharePoint Services 3.0 时,团队资源管理器和 Team System 2008 Team Foundation Server 的原始版本存在一个已知问题。您可以从 Microsoft 支持服务获取相应的修补程序,或者将团队资源管理器升级到 Team System 2008 Team Foundation Server。有关更多信息,请参见团队资源管理器的版本兼容性Team Foundation Server 的版本兼容性

Team Foundation Server Proxy 客户端与 Team Foundation Server 不同步

Team Foundation Server Proxy 有专门的疑难解答指南。有关更多信息,请参见 Team Foundation Server Proxy 疑难解答

说明:

如果对 Team Foundation Server Proxy 或 Team Foundation Server Proxy 的服务帐户进行了任何更改,则必须对代理和服务器都进行配置以反映这些更改。有关更多信息,请参见如何:配置 Team Foundation Server Proxy 的缓存安全性Team Foundation Server 安全结构

自定义 Team Foundation Server 组不按预期工作

症状:   Team Foundation 管理员或项目管理员为特定的 Team Foundation Server 项目创建了自定义组,但这些组的成员无法执行预期任务。

可能的原因:

  • 更改了组成员资格后,Team Foundation Server 可能需要一到两分钟才能完成同步。如果 Team Foundation 数据层服务器与 Team Foundation 应用层服务器之间(在使用 Active Directory 安全组时,还包括 Team Foundation Server 与安全组所在的域控制器之间)存在显著的网络延迟,则需要更长的同步时间。

  • 自定义组没有用户必须执行的任务所需的所有权限。创建自定义组和正确分配权限是一项复杂的任务。有关每个角色所适合的权限的信息,请参见 Team Foundation Server 默认组、权限和角色。有关 Team Foundation Server 权限定义的信息,请参见 Team Foundation Server 权限

为用户或组更改的权限在 Team Foundation Server 中不起作用

症状:   现有用户或组需要更改其权限。为组或用户更改权限后,该用户或组仍然无法立即执行需要新权限的操作。

可能的原因:

  • 更改权限后,Team Foundation Server 可能需要一到两分钟才能完成同步。如果 Team Foundation 数据层服务器与 Team Foundation 应用层服务器之间存在显著的网络延迟,将需要更长的同步时间。请用户或组等待几分钟,然后重试该操作。有关更多信息,请参见 Team Foundation Server 权限Team Foundation Server 安全结构

Team Foundation Server 服务帐户没有权限读取源代码管理文件

症状:   应用层服务器的事件日志中显示类似于以下内容的消息:“TF53010: Team Foundation 组件中发生了意外情况。应将此处包含的信息提供给您的站点管理人员。”详细的消息类似如下:“Microsoft.TeamFoundation.VersionControl.Adapter: 无法读取变更集。服务帐户可能没有检索此变更集的权限。”

可能的原因:

  • 如果您删除“Service Accounts”安全组对处于源代码管理下的文件或文件夹的“读取”权限,VersionControl.Adapter 可能无法读取该文件或文件夹。如果适配器无法将源代码管理信息读取到数据仓库中,适配器将向事件日志中写入一条错误消息,并且不更新数据仓库中的信息。如果没有来自文件或文件夹的源代码管理信息,后续源代码管理报告可能不准确。有关更多信息,请参见配置版本控制设置

  • 如果为团队项目显式设置权限或为默认安全组删除权限,可能会影响个别用户或组访问团队项目资源的能力。例如,设置或更改“服务帐户”的安全权限可重写该帐户访问团队项目文件或 Team Foundation 服务所需的默认设置。有关权限设置和继承的更多信息,请参见 Team Foundation Server 权限Team Foundation Server 默认组、权限和角色

请参见

概念

在工作组中管理 Team Foundation Server

其他资源

管理用户和组

管理权限

管理 Team Foundation Server 服务和服务帐户

管理 Active Directory 域中的 Team Foundation Server

保护 Team Foundation Server 的安全