2

使用 Active Directory,我试图找到用户经理的 SamAccountName 和电子邮件。

我通过搜索 sAMAccountName = Domain\Account 在 AD 中找到登录用户。然后我检索 manager 属性,它看起来像这样,例如:

CN=Doe\, Jane E.,OU=Employees,OU=Users,OU=Detroit,OU=United States,DC=na,DC=gmc,DC=gmc,DC=com"

我如何使用这个假定的密钥来查找此人的用户记录?我会在哪个领域匹配?

4

3 回答 3

2

如果我没记错的话,那是他们的专有名称,这意味着您可以将其用作对其个人资料的直接引用

LDAP://CN=Doe, Jane E.,OU=Employees,OU=Users,OU=Detroit,OU=United States,DC=na,DC=gmc,DC=gmc,DC=com

我还认为,如果配置文件存在,它将返回该名称。如果它已被删除,那么我相信它会运行某种 GUID(基于内存 - 这可能是不正确的)

于 2009-06-11T15:24:34.920 回答
1

经理的条目是经理的绑定字符串。您可以通过将其绑定到将返回管理员信息的对象,将其反馈到对活动目录的请求中。

于 2009-06-11T15:15:03.413 回答
1

(这是旧时的帖子,但我认为可能对社区中的其他人有用)

您可以使用字符串剥离并像这样找到它:

REPLACE(SUBSTRING(manager, 4, CHARINDEX('OU=', manager)-5), '\', '')

完整的工作查询(只需将 DOMAIN 更改为您自己的):

SELECT Top 901 manager, REPLACE(SUBSTRING(manager, 4, CHARINDEX('OU=', 
manager)-5), '\', '')
FROM OPENQUERY( ADSI, 'SELECT manager FROM ''LDAP://DC=DOMAIN,DC=local'' 
     WHERE objectCategory = ''Person'' AND objectClass= ''user''
     AND userprincipalname = ''*'' AND mail = ''*'' AND SN = ''*'' ')
于 2017-11-23T22:43:00.480 回答