我有一个使用django-auth-ldap的容器化应用程序,用于在Active Directory中搜索用户。我想合并两个单独的OU的输出。是否有其他方法或重载需要两个DN,或者将两个单独的搜索的输出联接在一起?
AUTH_LDAP_USER_SEARCH = LDAPSearch(os.environ.get('AUTH_LDAP_USER_SEARCH_BASEDN', ''),
ldap.SCOPE_SUBTREE,
"(sAMAccountName=%(user)s)")
答案 0 :(得分:6)
1.1版的新功能。
如果您需要在一个以上的地方搜索用户,则可以使用 LDAPSearchUnion。这需要多个
LDAPSearch
对象并返回 结果的并集。基础搜索的优先级是 未指定。
import ldap
from django_auth_ldap.config import LDAPSearch, LDAPSearchUnion
AUTH_LDAP_USER_SEARCH = LDAPSearchUnion(
LDAPSearch("ou=users,dc=example,dc=com", ldap.SCOPE_SUBTREE, "(uid=%(user)s)"),
LDAPSearch("ou=otherusers,dc=example,dc=com", ldap.SCOPE_SUBTREE, "(uid=%(user)s)"),
)