用于在LDAP邮件服务器中登录的内容是什么?

时间:2009-07-29 03:45:04

标签: ldap

如果我以这种方式在LDAP上添加数据:

 $ldapserver = "mail";
 $ds   = ldap_connect($ldapserver);
 $r    = ldap_bind($ds, $ldaprootun, $ldaprootpw);
 add = ldap_add($ds, "cn=$full_name,ou=$domain,o=mygroup.com", $infonew);

那是否意味着当我登录我的帐户时,我将使用:

  `cn="mynameHere",ou="domainIused",o=mygroup.com`

作为我的用户名?或者只是我的uid?

我的帐户无法登录,但我确信它存在于LDAP中。

非常感谢答案。 =)

2 个答案:

答案 0 :(得分:1)

通常在LDAP应用程序中,您只需使用您的UID登录,而不是使用完整的X.500名称。

尝试用你的信件调用ldap_bind()并查看它返回的内容?

答案 1 :(得分:0)

通常,用户提供一个简单的名称。然后,应用程序在LDAP源中搜索具有该值的某个属性。然后在代码中绑定或密码比较,作为完整的DN。

您可以使用唯一ID的uid,它必须是唯一的。即如果您找到多个实例,那就是错误。

您可以尝试使用CN,但这通常可以是多值的,具体取决于您的LDAP实现架构。

如果您知道自己反对eDirectory,那么uid就可以了,或者如果它是多值的,CN只会做一些事情。

如果您知道自己违反了Active Directory,则可以假设sAMAccountName是唯一的,因为系统会强制执行唯一性。 userPrinicpalName应该是唯一的,但实际上并没有强制执行它。

您可以随时使用邮件,这是一个非常统一的电子邮件地址。