我不明白如何在django中使用LDAPBackend,我想要做的就是根据LDAP对用户进行身份验证.我尝试过以下方法:
from django_auth_ldap.backend import LDAPBackend
auth = LDAPBackend()
user = auth.authenticate(username='my_uid',password='pwd')
Run Code Online (Sandbox Code Playgroud)
此时用户为None并且查看tcpdump我看不到任何与LDAP服务器的连接尝试.
settings.pyAUTH_LDAP_SERVER_URI = 'ldap.example.com'
AUTH_LDAP_USER_DN_TEMPLATE = 'uid=%(user)s,ou=People,dc=example,dc=com'
AUTH_LDAP_BIND_AS_AUTHENTICATING_USER = True
AUTH_LDAP_CACHE_GROUPS = True
AUTH_LDAP_GROUP_CACHE_TIMEOUT = 3600
AUTH_LDAP_USER_ATTR_MAP = {
"first_name": "givenName",
"last_name": "sn",
"email": "mail"
}
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
'django_auth_ldap.backend.LDAPBackend',
)
Run Code Online (Sandbox Code Playgroud)
官方django doc没有提供有关如何在视图中使用此后端的任何片段.
非常感谢您的帮助!