有人能解释一下ldap字符串部分的组成吗?
我有一个是:
string strSQL = "SELECT mail FROM 'LDAP://DC=amrs,DC=win,DC=ml,dc=COM' WHERE samaccountname = '" + UserName.Replace(@"AMRS\", "") + "'";这将获得针对特定用户名的电子邮件。现在,我需要从ldap查询中获取其他信息,但无法获得正确的设置,而且我也不知道ldap设置中的值是什么。LDAP://DC=amrs,DC=win,DC=ml,dc=COM
有人能给我解释一下吗?
发布于 2010-12-01 23:16:17
LDAP字符串中的DC=前缀表示域组件(dc)。这些是构成LDAP服务器的域的部分。这些是固定的,需要用于该服务器上的任何对象。
在"DNS style“中,这应该是:(something).amrs.win.ml.com (例如,服务器名称、机器名称等)
Richard Mueller有一个great post解释了LDAP bind字符串中最常见的前缀,比如dc=、ou= (组织单位)或cn= (常用名称)。
发布于 2010-12-01 23:19:40
这取决于您的特定LDAP模式。尝试使用JXplorer之类的LDAP浏览器来了解您的模式是如何构造的。对于尝试这样的查询,它也很棒。
DC是Domain Component的缩写。LDAP: URL描述特定服务器上的子树。where子句在条目中查询该匹配的属性samaccountname。
发布于 2010-12-01 23:27:31
您只需向LDAP服务器发出一个查询。像其他任何东西一样,它有自己的查询格式。我不认为它是一种语言,但它的格式肯定是正确的。您需要找到有关LDAP和可在LDAP目录中查找的组件的基本教程。您还可以像这样查看项目:
Active Directory LDAP Query by sAMAccountName and Domain
看看事情是如何做的,并通过例子来学习。对我来说,它有点像正则表达式,虽然不是很神秘,但如果我需要什么,我每次都要查找它,但至少我可以在看到它的时候识别部分,就像在DC上,我可能有dc=mydomain,dc=org。通过查看,我知道这是我开始查询的最高级别。从那里我必须去查一查。
https://stackoverflow.com/questions/4325738
复制相似问题