AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 431040
Accepted
Greg_the_Ant
Greg_the_Ant
Asked: 2011-03-29 10:27:26 +0800 CST2011-03-29 10:27:26 +0800 CST 2011-03-29 10:27:26 +0800 CST

Django LDAP - 如何将描述字段映射到 Django 组

  • 772

我正在尝试使用Django-Auth通过我的 Django 应用程序设置 LDAP 身份验证

我想做的基本想法是,描述中带有“IT - Help Desk”的任何 LDAP 用户都将映射到某个 Django 组,描述中带有“Admin”的用户将转到另一个 Django 组,其他任何人都不会被允许进入。

(有遗留原因我必须使用描述字段,所以这不是改变的选项)

更新:后续对话的某些部分移到了这里。

python
  • 1 1 个回答
  • 2512 Views

1 个回答

  • Voted
  1. Best Answer
    psagers
    2011-03-29T13:53:54+08:002011-03-29T13:53:54+08:00

    django-auth-ldap 1.0.9(3 月 27 日发布)添加了一对 Django 信号,客户端可以使用它们来自定义用户和配置文件对象。我建议连接到populate_user信号并使用 LDAP 属性来更新用户的组成员身份。例如:

    import django_auth_ldap.backend
    
    def update_groups(sender, user=None, ldap_user=None, **kwargs):
        # Remember that every attribute maps to a list of values
        descriptions = ldap_user.attrs.get("description", [])
    
        if "IT - Help Desk" in descriptions:
            # Add user to group
        else:
            # Remove user from group
    
    django_auth_ldap.backend.populate_user.connect(update_groups)
    

    这甚至可以安全地与AUTH_LDAP_MIRROR_GROUPS结合使用,因为信号是在所有内置用户填充完成后发送的。

    • 6

相关问题

  • 在 cygwin/XP 下安装完整 Python 的最佳方式?

  • Mac OS X:从 python 脚本中更改 $PATH

  • 可以使用 easy_install 和 bdist_rpm 安装吗?

  • 我可以“注册”python 脚本以在 Windows 上执行吗?

  • 如何使用脚本远程重启 Windows 服务?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve