django-auth-ldap 1.2.6

Django LDAP authentication backend

This is a Django authentication backend that authenticates against an LDAP service. Configuration can be as simple as a single distinguished name template, but there are many rich configuration options for working with users, groups, and permissions.

This version is tested on Python 2.6 to 2.7, Django >= 1.3, and python-ldap 2.4.13.

Full documentation can be found at http://pythonhosted.org/django-auth-ldap/; following is an example configuration, just to whet your appetite:

import ldap
from django_auth_ldap.config import LDAPSearch, GroupOfNamesType


# Baseline configuration.
AUTH_LDAP_SERVER_URI = "ldap://ldap.example.com"

AUTH_LDAP_BIND_DN = "cn=django-agent,dc=example,dc=com"
AUTH_LDAP_BIND_PASSWORD = "phlebotinum"
AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=users,dc=example,dc=com",
    ldap.SCOPE_SUBTREE, "(uid=%(user)s)")
# or perhaps:
# AUTH_LDAP_USER_DN_TEMPLATE = "uid=%(user)s,ou=users,dc=example,dc=com"

# Set up the basic group parameters.
AUTH_LDAP_GROUP_SEARCH = LDAPSearch("ou=django,ou=groups,dc=example,dc=com",
    ldap.SCOPE_SUBTREE, "(objectClass=groupOfNames)"
)
AUTH_LDAP_GROUP_TYPE = GroupOfNamesType()

# Simple group restrictions
AUTH_LDAP_REQUIRE_GROUP = "cn=enabled,ou=django,ou=groups,dc=example,dc=com"
AUTH_LDAP_DENY_GROUP = "cn=disabled,ou=django,ou=groups,dc=example,dc=com"

# Populate the Django user from the LDAP directory.
AUTH_LDAP_USER_ATTR_MAP = {
    "first_name": "givenName",
    "last_name": "sn",
    "email": "mail"
}

AUTH_LDAP_PROFILE_ATTR_MAP = {
    "employee_number": "employeeNumber"
}

AUTH_LDAP_USER_FLAGS_BY_GROUP = {
    "is_active": "cn=active,ou=django,ou=groups,dc=example,dc=com",
    "is_staff": "cn=staff,ou=django,ou=groups,dc=example,dc=com",
    "is_superuser": "cn=superuser,ou=django,ou=groups,dc=example,dc=com"
}

AUTH_LDAP_PROFILE_FLAGS_BY_GROUP = {
    "is_awesome": "cn=awesome,ou=django,ou=groups,dc=example,dc=com",
}

# Use LDAP group membership to calculate group permissions.
AUTH_LDAP_FIND_GROUP_PERMS = True

# Cache group memberships for an hour to minimize LDAP traffic
AUTH_LDAP_CACHE_GROUPS = True
AUTH_LDAP_GROUP_CACHE_TIMEOUT = 3600


# Keep ModelBackend around for per-user permissions and maybe a local
# superuser.
AUTHENTICATION_BACKENDS = (
    'django_auth_ldap.backend.LDAPBackend',
    'django.contrib.auth.backends.ModelBackend',
)
BSD

Author

Peter Sagerson

Pip

django-auth-ldap==1.2.6

Classifiers

  • Development Status :: 5 - Production/Stable
  • Environment :: Web Environment
  • Framework :: Django
  • Intended Audience :: Developers
  • Programming Language :: Python
  • Programming Language :: Python :: 2
  • Programming Language :: Python :: 2.6
  • Programming Language :: Python :: 2.7
  • Programming Language :: Python :: 3
  • Programming Language :: Python :: 3.3
  • Programming Language :: Python :: 3.4
  • License :: OSI Approved :: BSD License
  • Topic :: Software Development :: Libraries :: Python Modules
  • Intended Audience :: System Administrators
  • Topic :: Internet :: WWW/HTTP
  • Topic :: System :: Systems Administration :: Authentication/Directory :: LDAP
File Type Python Version Uploaded On Downloads
django-auth-ldap-1.2.6.tar.gz Source March 29, 2015 26,972
Version Release Date
1.2.6 March 29, 2015
1.2.5 Jan. 30, 2015
1.2.4 Dec. 28, 2014
1.2.3 Nov. 18, 2014
1.2.2 Sept. 22, 2014
1.2.1 Aug. 24, 2014
1.2.0 April 10, 2014
1.1.8 Feb. 1, 2014
1.1.7 Nov. 19, 2013
1.1.6 Nov. 10, 2013
1.1.5 Oct. 26, 2013
1.1.4 March 9, 2013
1.1.3 Jan. 6, 2013
1.1.2 Aug. 30, 2012
1.1.1 July 8, 2012
1.1 May 7, 2012
1.0.19 March 25, 2012
1.0.18 March 15, 2012
1.0.17 March 5, 2012
1.0.16 March 5, 2012
1.0.15 Feb. 4, 2012
1.0.14 Dec. 29, 2011
1.0.13 Dec. 15, 2011
1.0.12 Sept. 30, 2011
1.0.11 Aug. 28, 2011
1.0.10 June 23, 2011
Date Package Version Action
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.1 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.0 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.3 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.2 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.5 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.4 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.2.6 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.19 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.18 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.11 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.10 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.13 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.12 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.15 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.14 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.17 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.0.16 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.8 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.6 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.7 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.4 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.5 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.2 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.3 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap 1.1.1 Release Created
Aug. 24, 2015, 10:58 p.m. django-auth-ldap Package Created