是否可以从 SQL 服务器列出 TFS 组中的所有用户
Is it possible to list all users in a TFS group from SQL Server
我正在尝试从应用层不再可用的旧 TFS 2010 服务器恢复一些组成员信息(但 SQL 后端尚未删除)。我知道有命令行程序可以获取安全信息,但我想知道是否有可能仅在给定数据库 tables/views.
的情况下获取安全信息(特别是组成员资格)
经过摸索和反复试验后,我发现以下 SQL 似乎有效
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'
这是我用来列出 TFS 集合中的所有用户和成员资格的查询。
Select Object1.DisplayName as Name,
Object2.DisplayName as Membership
From ADObjectMemberships Member1,
ADObjects Object1,
ADObjects Object2
Where Object1.ObjectSID = Member1.MemberObjectSID and
Object2.ObjectSID = Member1.ObjectSID
Order By Membership, Name
我正在尝试从应用层不再可用的旧 TFS 2010 服务器恢复一些组成员信息(但 SQL 后端尚未删除)。我知道有命令行程序可以获取安全信息,但我想知道是否有可能仅在给定数据库 tables/views.
的情况下获取安全信息(特别是组成员资格)经过摸索和反复试验后,我发现以下 SQL 似乎有效
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'
这是我用来列出 TFS 集合中的所有用户和成员资格的查询。
Select Object1.DisplayName as Name,
Object2.DisplayName as Membership
From ADObjectMemberships Member1,
ADObjects Object1,
ADObjects Object2
Where Object1.ObjectSID = Member1.MemberObjectSID and
Object2.ObjectSID = Member1.ObjectSID
Order By Membership, Name