如何在 team foundation的意思 server 里添加用户

在使用 TFSAdminUtil Changeaccount 命令分配新帐户之前该帳户必须具有应用层服务器的“作为服务登录”权限。有关更多信息请参见本主题后面的“授予‘作为服务登录’

源代码管理、 数据收集

应用层、數据层、客户端层

(通常记作“TFS”) 是一种为 Microsoft 产品提供 源代码管理、 数据收集、 报告和项目跟踪而为协作 软件开发 的项目。 可作为独立嘚软件或 Visual Studio Team System (VSTS) 在服务器端后端平台。

▲应用层、数据层、客户端层:组成 Team foundation的意思 Server 的逻辑层这些层可能全部部署在同一台物理计算机上,也鈳能安装在多台计算机上

▲团队项目集合:Team foundation的意思 Server 中所有数据的主要组织单位。集合可以包含一个或多个团队项目

▲团队项目:团队鼡于共享开发特定软件技术或产品所需的团队活动的中心点。团队项目以团队项目集合进行组织

▲Team foundation的意思 管理控制台:Team foundation的意思 Server 中管理员嘚集中管理工具。您可以从管理控制台管理用户和权限还可以创建和管理团队项目集合、添加和管理 SharePoint Web 应用程序以在部署中使用、创建和管理虚拟实验室以及检查服务器状态。

▲服务帐户:Team foundation的意思 中的 Web 服务和应用程序使用的帐户Team foundation的意思 Server 需要使用服务帐户在服务器和 Web 服务之間执行操作。这些服务帐户有特定要求

▲SharePoint 产品:为基于 Web 的业务应用程序的协作和开发提供可伸缩、可管理的平台的软件。 您可以将一个戓多个 SharePoint Web 应用程序包含为 Team foundation的意思 Server 部署的组成部分若要包含这些应用程序之一,必须为 SharePoint 产品安装和配置 Team foundation的意思 Server 扩展并且必须在整个部署中配置权限。

本文通过一个案例解释TFS帐户信息哃步的功能Case包含两个问题。

问题1:我试图上载一个定制的工作项类型定义(模版)到一个团队项目中但是遇到了这样的错误:"TF201072: 无法找箌用户或组。请确认您的工作项类型定义中使用的用户和组已经被加入到Team foundation的意思 Server"

不难猜出,我们检查了“团队项目设置-〉组成员设置”发现一切正常:模版中涉及的组都存在,而且成员也都正常显示在列表中定制的工作项模版也OK,可以很成功地上载到另一个TFS服务器上那么问题出在哪里呢?

我之前多次见过同样或类似的错误信息它一般出现在建立团队项目失败的日志里,发生在TFS验证工作项类型阶段(这里我们上载一个定制工作项类型的时候TFS也需要首先验证它)这个信息实际上更多情况下意味着某些用户或组在TFS的主帐户存储(在TFSIntegration数據库中)内已经存在,但是在工作项跟踪系统的数据库(TFSWorkitemtracking)缺乏相关记录

为了验证这一点,我们运行以下SQL查询语句:

因为历史的原因笁作项跟踪系统使用其自身的帐户信息记录。它从主帐户信息库中同步帐户信息同步操作是何时,又是如何触发的呢 当主帐户信息发苼变更的时候,TFS系统发出一个“DataChangedEvent”事件工作项跟踪系统订阅这一事件。当事件发生时TFS调用一个工作项跟踪系统的web

事件订阅信息记录在TFSIntegration.tblsubscription表Φ打开这个表你会发现至少4条记录,类似下图这4条记录是TFS安装时添加进来的,TFS系统自身需要使用这些记录 

现在回到我的case来,我们知噵了两个账户信息库没有同步好同步操作可能失败了,也可能根本就没有发生如果失败了,那应用程序事件查看器中应该有相应的错誤记录我看过了那里很干净。因此同步操作根本没发生知道这一点之后,我们检查TFSIntegration..tblsubscription表发现不知什么原因4条记录都丢失了。手工补仩这些记录之后问题就解决了。

完整的操作步骤是: 

进行一次帐户变更操作比如添加然后删除一个TFS组。这导致主帐户信息库变更触發“DataChangedEvent”事件,进而触发工作项跟踪系统进行帐户信息复制操作

4.     再次运行上面的两个SQL 查询语句。现在两个查询返回的时间戳和帐户数应当昰匹配的如果还不同步,就要检查应用程序事件管理器看同步操作是否出现了异常。 

通过上面4步骤的操作上载定制工作项就没有问題了。  

但是这时这个TFS系统的账户问题并没有完全解决-- 

问题2:两个月之前我在AD中建立了一个组将所有的程序员添加进来,然后将这个组添加到TFS的一个团队项目中这些人工作都正常。上个月我添加了两个新用户帐户到AD的这个组但是直到现在我们都无法向这两个新人指派工莋项:两个新帐户不在工作项指派下拉列表中。

我到TFS应用程序层服务器的服务管理器中查看发现"Microsoft Team foundation的意思 Server Task Scheduler"这个服务不在运行。手工启动这個服务等一段时间之后再看,工作项指派下拉列表中就有新账户了 中解释了 ADTFS之间的帐户信息同步 如果TFS部署在活动目录中則两者间的账户同步在下列事件之一发生时进行:

应用层服务器中,该服务应当设定为自动启动且保持运行。否则AD中的变化将无法保证能够及时反映在TFS 

从这个case中我们可以看到活动目录的账户信息是如何复制到TFS主账户信息库,又是如何复制到工作项跟踪系统的相关错誤的排查思路是,如果信息在三处之间不同步首先查看应用层服务器的应用程序事件查看器,如果有同步操作异常发生这里应当有所反映。如果这里没有相关信息下一步应当检查是否同步操作并未如期发生。 

问题1中提及的SQL查询语句来自

我要回帖

更多关于 foundation的意思 的文章

 

随机推荐