LDAP АВТОРИЗАЦИЯ DJANGO

LDAP (Lightweight Directory Access Protocol) - это протокол, который используется для доступа к каталогам, содержащим информацию о пользователях, компьютерах и других ресурсах в сети. В Django можно использовать LDAP для аутентификации пользователей.

Для настройки LDAP-авторизации в Django необходимо выполнить следующие шаги:

1. Установить библиотеку django-auth-ldap:

pip install django-auth-ldap

2. В файле settings.py добавить настройки для LDAP:

import ldap
from django_auth_ldap.config import LDAPSearch, GroupOfNamesType

AUTH_LDAP_SERVER_URI = 'ldap://ldap.example.com'
AUTH_LDAP_BIND_DN = 'cn=admin,dc=example,dc=com'
AUTH_LDAP_BIND_PASSWORD = ''
AUTH_LDAP_USER_SEARCH = LDAPSearch('ou=users,dc=example,dc=com',ldap.SCOPE_SUBTREE,'(uid=%(user)s)')
AUTH_LDAP_GROUP_SEARCH = LDAPSearch('ou=groups,dc=example,dc=com',ldap.SCOPE_SUBTREE,'(objectClass=groupOfNames)')
AUTH_LDAP_GROUP_TYPE = GroupOfNamesType()
AUTH_LDAP_REQUIRE_GROUP = 'cn=DjangoUsers,ou=groups,dc=example,dc=com'
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_staff': 'cn=DjangoStaff,ou=groups,dc=example,dc=com','is_superuser': 'cn=DjangoSuperuser,ou=groups,dc=example,dc=com'}
AUTHENTICATION_BACKENDS = ['django_auth_ldap.backend.LDAPBackend', 'django.contrib.auth.backends.ModelBackend']

LDAP_AUTH_CONNECTION_USERNAME = ''
LDAP_AUTH_CONNECTION_PASSWORD = ''

3. В файле urls.py добавить URL-шаблоны для авторизации и выхода:

from django.contrib.auth.views import LoginView, LogoutView

urlpatterns = [
# ...
path('accounts/login/', LoginView.as_view(template_name='registration/login.html'), name='login'),
path('accounts/logout/', LogoutView.as_view(), name='logout'),
# ...
]

4. Создать шаблон для страницы авторизации. Например, файл login.html:

{% extends "base.html" %}
{% block content %}

Login


{% csrf_token %}
{{ form.as_p }}


{% endblock %}

Это базовые шаги для настройки LDAP-авторизации в Django. Обычно необходимо дополнительно настроить LDAP-сервер и выполнить другие действия для полноценной работы системы авторизации.

#11. Авторизация и аутентификация. Session-based authentication - Уроки по Django REST Framework

Django : How to achieve authentication with django-auth-ldap?

LDAP authentication using django (2 Solutions!!)

Django : Understanding Django-LDAP authentication

Django Authentication using LDAP Users - Web Login with LDAP Users - Django Login with LDAP Users

Django : Django LDAP authentication through Active Directory 2008

User Registration and Login Authentication - Django (3.0) Crash Course Tutorials (pt 14)

Django Authentication \u0026 User Management - Full Tutorial

как работает django - middleware django - django urls

#20. Делаем авторизацию пользователей на сайте - Django уроки

BLGPG-FDF346B2B84E-24-11-23-23

Новые материалы: