无法连接到我的本地LDAP服务器:"服务器无法运行"

时间:2016-03-04 12:55:16

标签: c# asp.net ldap openldap

我已在我的计算机上安装了OpenLDAP for Windows,但无法从我的ASP.NET应用程序连接到本地LDAP服务器。

我的代码中的第一步是创建一个新的DirectoryEntry实例:

DirectoryEntry entry = new DirectoryEntry("LDAP://maxcrc.com");

它抛出了一个异常,说"服务器无法运行"

我已经尝试过LDAP客户端程序,它们似乎可以很好地连接到localhost或(127.0.0.1)以及以下DC:

DC=maxcrc,DC=com

我尝试了几种连接方法,但没有包括(LDAP:// localhost,LDAP:// DC = maxcrc,DC = com或LDAP:// localhost / DC = maxcrc,DC = com)

1 个答案:

答案 0 :(得分:0)

如果我没记错的话,您需要在通过DirectoryEntry连接时指定端口号:

DirectoryEntry entry = new DirectoryEntry("LDAP://localhost:389");

但是,我建议您查看System.DirectoryServices.Protocols命名空间以实际促进服务器连接,尤其是LdapConnection类 - this question是一个很好的起点,并且很好地说明了这种方法的好处。

另外,请记住,通过端口389(ldap与ldaps)之间的流量将采用纯文本格式,这在诊断连接问题时非常有用。在这种情况下,Wireshark是您最好的朋友,并且内置了专门用于LDAP通信的TCP过滤器。