我正在使用django-auth-ldap库,并且一切正常。我正在使用AUTH_LDAP_USER_DN_TEMPLATE直接绑定。
用户的CN具有以下格式:“ department.surname”。部门是由5个字符组成的代码。
DN的模板是这样形成的:
AUTH_LDAP_USER_DN_TEMPLATE = 'CN=%(user)s,ou=Department,ou=Users,dc=example,dc=com'
用户占位符正在工作。问题在于部门OU是可变的。它取决于用户CN。由于此库不允许部门使用第二个占位符,因此我不知道该怎么办。当我为部门放置一个固定的字符串时,一切正常,但随后我无法对其他部门的用户进行身份验证。
有人有解决这个问题的想法吗?
谢谢。
答案 0 :(得分:1)
由于我的用户的CN格式为department.user,并且所有部门的代码均由5个字符组成,因此我开发了适用于我的变通方法:
AUTH_LDAP_USER_DN_TEMPLATE = 'CN=%(user)s,ou=%(user).5s,ou=Users,dc=example,dc=com'
在第一个OU中注意 .5 。