mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-01 23:47:40 +00:00
fix: 修复只配置DC域时,LDAP用户认证失败的问题
This commit is contained in:
@@ -82,6 +82,12 @@ class LDAPAuthorizationBackend(LDAPBackend):
|
||||
|
||||
class LDAPUser(_LDAPUser):
|
||||
|
||||
def _search_for_user_dn_from_ldap_util(self):
|
||||
from settings.utils import LDAPServerUtil
|
||||
util = LDAPServerUtil()
|
||||
user_dn = util.search_for_user_dn(self._username)
|
||||
return user_dn
|
||||
|
||||
def _search_for_user_dn(self):
|
||||
"""
|
||||
This method was overridden because the AUTH_LDAP_USER_SEARCH
|
||||
@@ -107,7 +113,10 @@ class LDAPUser(_LDAPUser):
|
||||
if results is not None and len(results) == 1:
|
||||
(user_dn, self._user_attrs) = next(iter(results))
|
||||
else:
|
||||
user_dn = None
|
||||
# 解决直接配置DC域,用户认证失败的问题(库不能从整棵树中搜索)
|
||||
user_dn = self._search_for_user_dn_from_ldap_util()
|
||||
self._user_dn = user_dn
|
||||
self._user_attrs = self._load_user_attrs()
|
||||
|
||||
return user_dn
|
||||
|
||||
|
Reference in New Issue
Block a user