Get Active Directory GUID from SQL Server
本文关键字:SQL Server from GUID Active Directory Get | 更新日期: 2023-09-27 18:35:38
我使用以下代码从C#
中的Active Directory获取User GUID
:
var GUIDID = "";
using (var domainContext = new PrincipalContext(ContextType.Domain, domain))
{
using (var user = UserPrincipal.FindByIdentity(domainContext, IdentityType.SamAccountName, userNameToUse))
{
if (user != null)
{
GUIDID = user.Guid.ToString();
}
}
}
因此,针对特定人员的上述代码的输出是:
7b8b17f1-9997-46ac-bec4-c747eed2de33
我现在要做的是使用该GUIDID
从SQL Server 2008
查询活动目录。但是,我遇到的问题是我不知道该列的名称。
我尝试使用以下代码从SQL中搜索同一个人(使用他们的全名):
SELECT cn, objectGUID
FROM 'LDAP://xxx.local/OU=xxx Users,DC=xxx,DC=xxx'
WHERE objectClass = 'User' AND cn = 'John Smith'
然而,objectGUID
,OBjectSID
与我的C#
代码返回GUIDID
不同。
我还尝试select *
我的SQL
查询,但它只返回路径。
关于如何从SQL代码中找出GUID COLUMN name
的任何建议?
谢谢
解决方案非常简单。我需要转换ObjectID
SELECT CONVERT(UNIQUEIDENTIFIER,0xF1178B7B9799AC46BEC4C747EED2DE33);
希望它对某人有所帮助。