1

在过去的 18 个月中,我们有 85 名 TFS 用户离开了公司。8 坚持显示为[TEAM FOUNDATION]\Team Foundation Valid Users[Collection]\Project Collection Valid Users,尽管他们没有其他项目组成员身份。

在我们的企业中,TFS 用户由他们的 AD/网络 ID 标识,并且在离开时根据公司政策被“禁用”而不是被删除。通常,除了全局组成员身份“域用户”之外,他们没有任何组成员身份。

我们目前在生产中使用 Team Foundation Server 2012 Update 3。我们已经开始在我们的测试环境中进行测试,并计划在未来 6 个月内将生产迁移到 Update 4。

我们不断扩展我们的标准,以确保残疾用户不存在“纠缠”,以防止出现这种“孤立用户”的情况。我们目前在 TFS 用户离开时审查并采取行动,以确保:

1.  User is not associated with a TFS Collection Project group
2.  User has no workspaces associated with their identity in TFS
3.  User has no shelvesets associated with their identity in TFS
4 . User has no items checked out (locked) in TFS
5.  User has no Work Items “Assigned To” their identity in TFS
6.  User has no Project Alerts associated with their identity in TFS

我们已经通过命令行或 Web 界面删除了所有用户。我们确保它们不会通过管理员控制台显示。我们已清除 TFS 服务器上的缓存。我们定期监控TFSSynchronizeIdentities,并看到它始终如一地正确运行。TFS 服务器会定期重新启动。

持续时间最长的“孤立用户”在 TeamFoundation 和 Collection Valid Users 组下已经持续了 18 个月,而其他 77 名用户已经退出,几乎不需要额外的操作。问题仍然存在。8 个“孤儿用户”在整个 18 个月中都发生了——不仅仅是一个老问题,所有 8 个从 18 个月前开始持续存在,并且从那时起其他 77 个已成功删除。

当前使用 Update 4 的测试结果表明“孤立用户”在从 Update 3 升级到 Update 4 的过程中持续存在。Update 4 并没有解决“孤立用户”的问题。

4

1 回答 1

1

我们在 TFS2013 更新 4 中遇到了类似的问题。离开公司的用户仍然存在于 Team Web Access 的“分配给”下拉列表中。在 TFS 配置中设置“类似忍者”的注册表项对我们有用。继承人的代码:

using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.Framework.Client;

// Get TfsConfigurationServer
var cs = new Microsoft.TeamFoundation.Client.TfsConfigurationServer(new Uri("http://YourTfs:YourPort/tfs"));
cs.EnsureAuthenticated();
// Get reg service of configuration server
var regService = cs.GetService<ITeamFoundationRegistry>();
//Set value
regService.SetValue("/Service/Integration/Settings/IdentitySyncFull", true);

之后触发新的同步并观察结果。

于 2016-04-14T13:49:08.053 回答