现在我必须编写完整的查询,才能登录到用户。有没有一种方法可以只使用唯一标识符执行ldap_bind,而不是编写完整的rdn。
或者,如果我可以指定基本DC,这样,如果其中有用户的子ou,它将能够进行检查。
ldap_bind($ds, "uid=my_user", "password") versus
ldap_bind($ds,"uid=my_user,ou=developers,dc=mycompan,dc=org","password")
您必须使用完整的DN来根据LDAP进行身份验证。别无选择。
您可以使用默认用户帐户或匿名绑定来搜索包含您首选登录数据的LDAP条目。然后从返回的条目中检索DN,并将其用于第二次绑定。这样,用户只需输入唯一的标识符,您仍然可以使用DN进行绑定。
有关代码示例,请查看https://gist.github.com/heiglandreas/5689592