Аутентификация Django Ldap Полный пример - PullRequest
0 голосов
/ 06 февраля 2019

Я частично понял аутентификацию Django Ldap.Кто-нибудь может привести полный пример разработки очень простого приложения, которое использует Django Authentication Ldap .

Я прошел этот ресурс и пытался понять многие вещи, но все же я нев состоянии понять, как использовать его в реализации.Как создать пользовательскую модель, которая будет использоваться вместе с классом LdapBackend, и как написать много вещей в методе authenticate () и т. Д.

1 Ответ

0 голосов
/ 06 февраля 2019

Здесь вы можете увидеть полный пример с очень хорошим руководством, показывающий, как создать пользовательский LDAPBackend.

. Вам необходимо настроить параметры LDAP в settings.py (как показано нассылка, которую вы опубликовали) и добавьте свой LDAPBackend к AUTHENTICATION_BACKENDS.Вы можете использовать предоставленный LDAPBackend по умолчанию или создать собственный и использовать его.

Использование по умолчанию LDAPBackend, предоставляемого django-auth-ldap:

AUTHENTICATION_BACKENDS = (
    'django_auth_ldap.backend.LDAPBackend',
    'django.contrib.auth.backends.ModelBackend',
)

Использование пользовательского LDAPBackend, есливам нужно добавить дополнительную логику к аутентификации:

AUTHENTICATION_BACKENDS = (
    'accounts.backends.MyLDAPBackend',
    'django.contrib.auth.backends.ModelBackend',
)

Затем в accounts/backends.py:

from django_auth_ldap.backend import LDAPBackend

class MyLDAPBackend(LDAPBackend):
    """ A custom LDAP authentication backend """

    def authenticate(self, username, password):
        """ Overrides LDAPBackend.authenticate to add custom logic """

        user = LDAPBackend().authenticate(self, username, password)

        """ Add custom logic here """

        return user

Для получения более подробной информации см. приведенный выше пример.

ЕслиВы новичок в LDAP. Я бы порекомендовал взглянуть на этот ответ (и другой тоже) на другой вопрос по этой теме.

...