一般在公司内部都会使用ldap系统进行用户认证。
安装 pip install django-auth-ldap
主要在settings.py的配置
点击(此处)折叠或打开
- #设置后端认证函数,先进行ldap认证 后进行数据库认证
- AUTHENTICATION_BACKENDS = [
- \’django_auth_ldap.backend.LDAPBackend\’, # ldap认证
- \’django.contrib.auth.backends.ModelBackend\’, # 数据库用户认证
- ]
-
AUTH_LDAP_USER_ATTR_MAP = { \'first_name\': \'cn\', \'last_name\': \'sn\', \'email\': \'mail\',}
#是否同步ldap的修改,当ldap属性修改后当通过ldap认证会自动同步到django的user表中
AUTH_LDAP_ALWAYS_UPDATE_USER = True
AUTH_LDAP_CACHE_TIMEOUT = 100 #ldap缓存时间 AUTH_LDAP_DENY_GROUP = \’cn=kerrigan,ou=Group,dc=ops-coffee,dc=cn\’ #拒绝这个组下的成员登录
# 设置额外属性,以下设置为 admin组内的成员登录自动在django设置超级管理员权限,在user表设置is_superuser为True
AUTH_LDAP_USER_FLAGS_BY_GROUP = {
\’is_superuser\’: \’cn=admin,ou=Group,dc=ops-coffee,dc=cn\’,
}