Install the package with pip:
$ pip install django-auth-ldap
It requires python-ldap >= 3.0. You'll need the OpenLDAP libraries and headers available on your system.
To use the auth backend in a Django project, add 'django_auth_ldap.backend.LDAPBackend'
to AUTHENTICATION_BACKENDS
. Do not add anything to INSTALLED_APPS
.
AUTHENTICATION_BACKENDS = ["django_auth_ldap.backend.LDAPBackend"]
~django_auth_ldap.backend.LDAPBackend
should work with custom user models, but it does assume that a database is present.
Note
~django_auth_ldap.backend.LDAPBackend
does not inherit from ~django.contrib.auth.backends.ModelBackend
. It is possible to use ~django_auth_ldap.backend.LDAPBackend
exclusively by configuring it to draw group membership from the LDAP server. However, if you would like to assign permissions to individual users or add users to groups within Django, you'll need to have both backends installed:
AUTHENTICATION_BACKENDS = [
"django_auth_ldap.backend.LDAPBackend",
"django.contrib.auth.backends.ModelBackend",
]
Django will check each authentication backend in order, so you are free to reorder these if checking ~django.contrib.auth.backends.ModelBackend
first is more applicable to your application.