LDAP Auth:OU(组织单位)中的变量

LDAP Auth: Variable in OU (Organizational Unit)

我正在使用 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。由于这个图书馆不允许部门的第二个占位符,我不知道该怎么做。当我为部门设置固定字符串时,一切正常,但我无法验证其他部门的用户。

有没有人有解决这个问题的想法?

提前致谢。

因为我的用户的 CN 格式是 department.user 并且所有部门代码都由 5 个字符组成,所以我开发了这个对我有用的解决方法:

AUTH_LDAP_USER_DN_TEMPLATE = 'CN=%(user)s,ou=%(user).5s,ou=Users,dc=example,dc=com'

注意第一个 OU 中的 .5