一般在公司内部都会使用ldap系统进行用户认证。
  安装  pip install django-auth-ldap
  主要在settings.py的配置

点击(此处)折叠或打开

  1. #设置后端认证函数,先进行ldap认证 后进行数据库认证
  2. AUTHENTICATION_BACKENDS = [
  3. 'django_auth_ldap.backend.LDAPBackend',          # ldap认证
  4. 'django.contrib.auth.backends.ModelBackend',     # 数据库用户认证
  5. ]
  6. #ldap的连接基础配置
    AUTH_LDAP_SERVER_URI = "ldap://xxx.xxx.xxx.xxx:389" # ldap or ad 服务器地址
    AUTH_LDAP_BIND_DN = "CN=administrator,CN=Users,DC=test,DC=com" # 管理员的dn路径
    AUTH_LDAP_BIND_PASSWORD = 'testpassword' # 管理员密码
    #搜索的域
    AUTH_LDAP_USER_SEARCH = LDAPSearch(
        'ou=users,dc=example,dc=com',
         ldap.SCOPE_SUBTREE,
        '(uid=%(user)s)',
    )
    #如果有多个域
    AUTH_LDAP_USER_SEARCH = LDAPSearchUnion(
        LDAPSearch(
        'ou=users,dc=example,dc=com',
         ldap.SCOPE_SUBTREE,
        '(uid=%(user)s)'),
      LDAPSearch(
        'ou=admin,dc=example,dc=com',
         ldap.SCOPE_SUBTREE,
        '(uid=%(user)s)',

    )
    #django数据跟ldap字段对应关系,key为django字段,value为ldap字段

    AUTH_LDAP_USER_ATTR_MAP = { 'first_name': 'cn', 'last_name': 'sn', 'email': 'mail',}
#是否同步ldap的修改,当ldap属性修改后当通过ldap认证会自动同步到django的user表中
        AUTH_LDAP_ALWAYS_UPDATE_USER = True    
        
        AUTH_LDAP_CACHE_TIMEOUT = 100 #ldap缓存时间         AUTH_LDAP_DENY_GROUP = 'cn=kerrigan,ou=Group,dc=ops-coffee,dc=cn' #拒绝这个组下的成员登录
        # 设置额外属性,以下设置为 admin组内的成员登录自动在django设置超级管理员权限,在user表设置is_superuser为True
        AUTH_LDAP_USER_FLAGS_BY_GROUP  = {
                      'is_superuser': 'cn=admin,ou=Group,dc=ops-coffee,dc=cn',
            }  
         

django使用ldap进行用户登录认证相关推荐

  1. java通过ldap添加用户后_ldap连接不上改用户_JAVA通过LDAP做用户登录认证,怎么做业务的异常处理?...

    通过java.namming包实现LDAP用户登录认证,怎么区分账号被冻结.停用.不存在等异常的业务情况呢? 参考的是:网上普遍流传的LDAP连接的代码 public boolean auth(Str ...

  2. LDAP用户登录认证校验 及 LDAP分页查询

    某天,老大说,给我一个需求,支持LDAP用户登录,一听,哇,这是啥 啥 啥.经过刻苦努力Ctrl+C/V,终于搞出来了,上代码! 了解一下,LDAP(Lightweight Directory Acc ...

  3. 用户修改了信息jwt服务器怎么识别,django使用JWT保存用户登录信息

    什么是JWT? Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站 ...

  4. springboot集成shiro实现用户登录认证

    Apache Shiro 是一个功能强大且易于使用的Java安全框架,可执行身份验证.授权.加密和会话管理.使用Shiro易于理解的API,您可以快速轻松地保护任何应用程序-从最小的移动应用程序到最大 ...

  5. 基于jwt的用户登录认证

    最近在app的开发过程中,做了一个基于token的用户登录认证,使用vue+node+mongoDB进行的开发,前来总结一下. token认证流程: 1:用户输入用户名和密码,进行登录操作,发送登录信 ...

  6. java用户的登录图片_Java 如何用 token 做用户登录认证

    1.什么是 token??? Token 是服务端生成的一串字符串,以作客户端进行请求的一个令牌. 2.token 做用户登录认证 ● 流程 3. Java 实现 ● 用户登录生成 token,保存到 ...

  7. java+登录window域认证网页_Java 如何用 token 做用户登录认证

    1.什么是 token??? Token 是服务端生成的一串字符串,以作客户端进行请求的一个令牌. 2.token 做用户登录认证 ● 流程 3. Java 实现 ● 用户登录生成 token,保存到 ...

  8. SpringBoot 快速集成 JWT 实现用户登录认证

    前言:当今前后端分离时代,基于Token的会话保持机制比传统的Session/Cookie机制更加方便,下面我会介绍SpringBoot快速集成JWT库java-jwt以完成用户登录认证. 一.JWT ...

  9. 【Docker】Registry搭建私有仓库、证书认证、用户登录认证

    一.Docker Registry工作原理 02_Docker Registry角色 Docker Registry有三个角色,分别是index.registry和registry client. i ...

  10. AOD.Net用户登录认证实验

    文章目录 AOD.Net用户登录认证实验 一.实验目的 二.实验环境 三.实验内容 四.原理实验步骤 原理: 实验步骤: 五.关键问题及解决方法 六.实验结果 七.实验体会 附录:源代码(仅仅附上核心 ...

最新文章

  1. SpringBoot+AOP实现多数据源动态切换
  2. boost::graph模块实现内部pmap捆绑的测试程序
  3. HDU - 1247 (字典树水题)
  4. arm板上简单运行main.cpp
  5. 程序人生 - 座位险和驾乘险有什么区别,买了后者还需要前者吗?
  6. 2021年安全生产模拟考试(全国特种作业操作证电工作业-电气试验模拟考试题库二)安考星
  7. 通过Bellman算子理解动态规划
  8. Verilog分频器
  9. 这份春招攻略,希望大家可以收藏!
  10. JVM垃圾回收——三色标记法
  11. 深度学习框架【MxNet】的安装
  12. 〖ChatGPT实践指南 - 零基础扫盲篇⑥〗- OpenAI API 报错An error occurred during your request
  13. [记录学习]自学动力节点老杜Spring6笔记_01
  14. 网络速度单位及其读法----1Mbps的专业读法和1Mb/s的专业读法
  15. 猫眼数据SQLITE保存格式
  16. 图(Graph),也称网络(Network)
  17. python英文分句_教你如何对英文段落进行分句
  18. 谷歌浏览器 chrome network 没有显示url请求 问题
  19. java毕业生设计医院门诊分诊系统计算机源码+系统+mysql+调试部署+lw
  20. MCU集成-时钟复位控制

热门文章

  1. 机器学习笔记 - 什么是联合概率分布?
  2. 全国计算机等级考试——C语言二级 题库
  3. excel怎么启用宏_利用Excel连接Power BI,实现PPT报告自动输出
  4. ResNet18、50模型结构
  5. PHP从基础到高级总结
  6. Django数据库的增删改查学习笔记
  7. Jrebel使用+激活码
  8. 呼叫中心系统功能其优势
  9. 华为认证哪个方向好学?
  10. Python源码保护