【发布时间】:2020-01-15 02:05:52
【问题描述】:
我是 Django 和 LDAP 的新手。我正在创建一个使用 LDAP 身份验证作为登录系统的 Django 应用程序。我能够连接到 LDAP 服务器并使用来自 LDAP 的预先存在的帐户进行身份验证,然后填充我的 MySQL 数据库 auth_user 表以具有像 this 这样的数据行:
所以我的问题是如何将“is_staff”和“is_superuser”的值设置为 1?
-- settings.py 中的 LDAP 设置 --
AUTH_LDAP_SERVER_URI = "ldap://ldap.m*****.com.my:389"
AUTH_LDAP_BIND_DN = ""
AUTH_LDAP_BIND_PASSWORD = ""
AUTH_LDAP_USER_SEARCH = LDAPSearch("o=m*****net", ldap.SCOPE_SUBTREE, "(uid=%(user)s)")
AUTH_LDAP_USER_ATTR_MAP = {
"first_name": "givenName",
"last_name": "sn",
"email": "mail",
}
AUTHENTICATION_BACKENDS = (
'django_auth_ldap.backend.LDAPBackend',
'django.contrib.auth.backends.ModelBackend',
)
# logging
logger = logging.getLogger('django_auth_ldap')
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)
【问题讨论】: