天天看點

Django使用ldap認證登入

一、安裝依賴包

yum install gcc libffi-devel python-devel openssl-devel openldap-devel -y

二、安裝Python庫

pip install python_ldap

pip install django-auth-ldap

三、修改django項目中的setting配置檔案

AUTHENTICATION_BACKENDS = (

'django_auth_ldap.backend.LDAPBackend', ##優先使用ldap登入

'django.contrib.auth.backends.ModelBackend', ##ldap登入失敗後使用預設登入方式認證

)

AUTH_LDAP_SERVER_URI = "ldap://10.10.xx.xx:389" # ldap伺服器位址

AUTH_LDAP_BIND_DN = 'cn=gitlxxxx,ou=Special,dc=xiaoniu,dc=com' # 可為空,也可以填寫一個真實的ldap使用者

AUTH_LDAP_BIND_PASSWORD = 'git-xxxx'

AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=xxxxxxxxx,dc=xxxxxx,dc=com", ldap.SCOPE_SUBTREE, '(SAMAccountName=%(user)s)') # 第一個參數是搜尋的範圍

AUTH_LDAP_USER_ATTR_MAP = {"first_name": "givenName", "last_name": "sn", "email": "mail"}

AUTH_LDAP_ALWAYS_UPDATE_USER = True

本文轉自 aaron428 51CTO部落格,原文連結:http://blog.51cto.com/aaronsa/2050070