【问题标题】:LDAP authentication with django REST使用 django REST 进行 LDAP 身份验证
【发布时间】:2016-06-03 16:11:10
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: python django ldap django-rest-framework


    【解决方案1】:

    有一个名为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“决定”使用哪种方法。更多信息在django docs

    【讨论】:

    • 如果我在 setiings.py 文件中使用 AUTH_LDAP_BIND_DNAUTH_LDAP_BIND_PASSWORD 和其他设置。我需要在视图中做任何其他事情吗?或者我需要的只是设置文件,我可以使用广告用户名、密码登录
    • 如果您正确配置设置,则无需更改视图中的任何内容
    • 另一个流行的包是django-python3-ldap
    • 我们可以使用ssl进行ldaps身份验证
    猜你喜欢
    • 1970-01-01
    • 2014-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    • 2014-03-08
    • 2014-08-09
    • 2011-07-23
    相关资源
    最近更新 更多