如何获取当前/活动 TFS 用户的列表



我可以使用 TFSCONFIG 身份来查看 TFS 中的所有用户,但是,这些用户会提取已存在多年的帐户,并且不再绑定 AD 帐户。 我想将搜索限制为仅拥有 AD 帐户的人。 这可能吗? 我确实在下面找到了博客,但在我尝试之前,我想看看是否有一个 powershell 脚本或 TFS 命令可以提供我需要的东西。 谢谢。

https://blogs.msdn.microsoft.com/tfssetup/2013/09/18/how-to-generate-a-report-of-active-users-who-log-onto-the-tfs-server/

没有这样的 TFS 命令行可以处理这种情况。怕您必须通过 TFS 中的集合数据库级别才能获取相关信息。

您可以使用 Last_Access_Time ,示例脚本如下:

SELECT IdentityName,
StartTime,
Command,
IPAddress,
ExecutionTime
FROM tbl_Command WHERE CommandId IN
(SELECT Max(CommandId) FROM tbl_Command WHERE Application NOT LIKE 'Team Foundation JobAgent' Group By IdentityName ) ORDER BY Last_Access_Time DESC

请注意,在运行SQL脚本之前,您可以仔细检查是否有更改,如果某些列不再可用,因为博客已过期。


另一种方法是在 TFS 数据库中存档tbl_command的内容。在 TFS 数据库中,tbl_command捕获连接信息。 默认情况下,此表仅存储 14 天的信息。 您可以查看以下类似问题:找出过去 6 个月内登录到 TFS 的用户

您可以设置另一个数据库,并有一个作业来复制信息以供长期使用。 详细信息请参阅此示例。

在阅读本文和几个相关线程后,我发现以下内容对我很有用(在 TFS2015U3 上(:

USE [Tfs_YourTeamProjectCollectionNameHere]  -- Optional if you already have Query connected to your TPC.
SELECT IdentityName AS [User], Max(StartTime) AS [LastConnect] FROM tbl_Command with (nolock) GROUP BY IdentityName ORDER BY [LastConnect] DESC

每个用户的上次登录 - 每个 www.databaseforum.info/30/1174675.aspx(可能从其他原始来源抓取(和合法参考"我的服务器在做什么? https://blogs.msdn.microsoft.com/jefflu/2005/08/11/team-foundation-whats-my-server-doing/

干杯,享受吧!-西番

试试这个实用程序/命令:

tfssecurity /imx all: https://yourtfsserver.company.com

这应该打印出所有内容。 如果有的话,请查看此工具的帮助。 它告诉您如何完全按照您的要求进行操作。

它将在 %INSTALL_DRIVE%\Program Files (x86(\Microsoft Visual Studio 12.0\Common7\IDE 中

最新更新