在OpenLDAP中更改DN“即时”

我是LDAP的新手,我有以下问题:

我使用OpenLDAP作为远程Active Directory的caching代理。

而用户的完整DN就像"cn=Doe\, John,ou=users,ou=others,dc=company,dc=com" ,而uidsAMAccountName )则是第一个和第二个名字的简写forms。 例如, John Doe将成为jdoe

我已经有SVN服务器,Bugzilla和ReviewBoard正常工作,因为他们有很多LDAP支持的设置。 但现在我正在尝试设置YouTrack,并且缺lessLDAP设置。

我希望能够使用短格式login(如“ jdoe ”)loginYouTrack,但是当我将YouTrack中的变换string设置为"sAMAccountName=$login$,ou=users,ou=others,dc=company,dc=com" other "sAMAccountName=$login$,ou=users,ou=others,dc=company,dc=com"我一直有下面的错误:

[LDAP:错误代码49 – 80090308:LdapErr:DSID-0C0903A9,注释:AcceptSecurityContext错误,数据52e,v1db1]这是“无效的凭据”。

但是,如果我在转换string中明确指定全名,我可以login(但当然没有其他人):

 "cn=Doe\, John,ou=users,ou=others,dc=company,dc=com" 

所以,我的问题是:我可以修改用户的“即时”的DN,以便有这样的事情,例如:

 "cn=jdoe,ou=users,ou=others,dc=company,dc=com" 

尽pipe这个问题可能有点老,但我想到了这个问题。 也许这对未来有帮助:

  1. 你可以简单地通过使用ldapmodify修改DN来改变DN changetype: moddn或者modrdn提供新的DN( newrdn )。 有关这方面的更多信息可以在这里find第4项中的第4项: http ://www.zytrax.com/books/ldap/ch8/#changetype
  2. 你可以在OpenLDAP中使用“rwm”覆盖。 这可以让你重写你的DN,按摩后缀,甚至提供一个虚拟的数据视图。 检查man 5 slapo-rwm 。 这个东西真的很强大!
  3. 另一种方法是为初始条目设置一个别名。 cn=jdoe,ou=users,ou=others,dc=company,dc=com可以是对象类“别名”,并将您的初始帐户写入属性aliasedObjectName 。 在这种情况下,您需要做的只是检查ldapsearch操作是否遵循引荐。

在我的服务器上,我有一个类似的设置,并select第三种方式。 为了使它完全干净,我创build了自己的模式,在这里我有一个专用的别名对象类,为此提供了必要的附加字段。