是否可以从 SQL Server 列出 TFS 组中的所有用户
问题描述:
我正在尝试从旧的 TFS 2010 服务器恢复一些组成员信息,该服务器的应用程序层不再可用(但 SQL 后端尚未删除).我知道有命令行程序可以获取安全信息,但我想知道是否有可能仅在数据库表/视图的情况下获取安全信息(特别是组成员身份).
I am trying to recover some group membership information from an old TFS 2010 server for which the application tier is no longer available (but the SQL back-end has not yet been deleted). I know there are command line programs to get security information but I am wondering if it is possible to get security information (specifically group membership) given only the database tables/views.
答
经过摸索和一些试错后,我发现以下 SQL 似乎有效
After poking around and some trial-and-error, I found that the following SQL seems to work
USE MyCollection;
SELECT
--grp.[SamAccountName] 'group_name',
member.SamAccountName 'member_name'
FROM
[ADObjects] grp
JOIN ADObjectMemberships om ON om.ObjectSID = grp.ObjectSID
JOIN ADObjects member ON om.MemberObjectSID = member.ObjectSID
WHERE
grp.SamAccountName = 'MyGroup'