使用 django REST 进行 LDAP 身份验证

LDAP authentication with django REST

目前我有访问 Django REST Api 后端的基本授权,我可以使用通过 shell

创建的 username / passowrd

我没有登录页面,我正在使用所有内置的。

现在我想从我的 Active Directory 中验证来自 LDAP 的用户名/密码。

有什么方法我不需要为此创建登录页面并且我可以在同一个地方输入用户名/密码并且我的用户使用 Active Directory 进行身份验证。

我是否需要创建一些手动逻辑来获取用户名密码然后将其发布,我在想是否可以在不执行 django 已经提供的基本身份验证等操作的情况下获得它

有一个包叫 django-auth-ldap。 它带有一个 django 身份验证后端。 只需将 django_auth_ldap.backend.LDAPBackend 添加到您的 AUTHENTICATION_BACKENDS

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

您可能需要像 ldap 主机一样定义更多设置。但是文档非常好。

然后您可以使用您的正常身份验证视图和django "decide"使用哪种方法。 django docs

中有更多信息