如何指定 LDAP 用户名以连接到 Active Directory?

Ken*_*Ken 7 active-directory ldap

我正在尝试将我的程序与 LDAP 集成。我这里有一个 Active Directory 服务器,它显然使用 LDAP。我想在尝试调试自己的代码之前先看看服务器上有什么。我找到了一个名为jxplorer的程序,它声称能够与 LDAP 服务器通信。

但是,我似乎无法让它发挥作用。我正在使用设置:

  • 主机:(我的AD服务器的IP地址)
  • 端口:389
  • 协议:LDAPv3
  • 基本 DN:OU=MyCompany,DC=domaincontroller,DC=local(我从我公司的其他人那里得到的一个字符串,他以前在这里写过一些 LDAP 代码)
  • 级别:用户+密码
  • 用户 DN、密码:(我在此 Exchange 服务器上的用户名和密码)

我得到的错误是:

javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID=0C090334, comment: AcceptSecurityContext error, data 525, vece ]
Run Code Online (Sandbox Code Playgroud)

这里的另一个 LDAP 家伙说 525 是“未找到用户”,并假设可能需要在“LDAP 命名法”中指定用户名。

有谁知道如何使用 jxplorer 连接到 AD?

Ken*_*Ken 7

想出办法:这不是您的用户登录。这是一个 LDAP DN,如:

CN=My Name,OU=My Company,DC=server,DC=local
Run Code Online (Sandbox Code Playgroud)

  • 请注意,您在 AD 中的登录名通常是 sAMAccountName。所以肯。而您的 CN 取决于创建您的人在创建时输入显示名称的方式。那可能是 Ken Smith 或 Smith、Ken 或 Ken J. Smith 或者他们喜欢的任何东西。(还记得句号和逗号需要用反斜杠转义,所以它可能是 Smith\, Ken J\. 作为值。 (2认同)