Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Django配置Windows AD域进行账号认证

Django配置Windows AD域进行账号认证

作者头像
BigYoung小站
发布于 2020-05-05 14:40:43
发布于 2020-05-05 14:40:43
2.6K00
代码可运行
举报
文章被收录于专栏:BigYoung小站BigYoung小站
运行总次数:0
代码可运行

我们使用Django开发网站后台是,会有账号密码认证登录的需求,一般公司内部会使用Windows 的AD 或者Linux下的OpenLDAP进行账号密码认证。以下为Django使用Windows AD进行账号认证的配置,代码全部配置在Django的setting.py 文件中,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1#Django-auth-ldap 配置部分 此部分代码配置在django的settings.py里
 2import ldap
 3from django_auth_ldap.config import LDAPSearch,GroupOfNamesType
 4
 5#修改Django认证先走ldap,再走本地认证
 6AUTHENTICATION_BACKENDS = [
 7    'django_auth_ldap.backend.LDAPBackend',
 8    'django.contrib.auth.backends.ModelBackend',
 9]
10
11#ldap的连接基础配置
12AUTH_LDAP_SERVER_URI = "ldap://192.168.146.21:389"
13AUTH_LDAP_BIND_DN = "CN=administrator,CN=Users,DC=test,DC=com"
14AUTH_LDAP_BIND_PASSWORD = 'testpassword'
15
16#允许认证用户的路径
17# AUTH_LDAP_USER_SEARCH = LDAPSearch("OU=test,DC=test,DC=com", ldap.SCOPE_SUBTREE, "(&(objectClass=person)(sAMAccountName=%(user)s))")
18AUTH_LDAP_USER_SEARCH = LDAPSearch("OU=test,DC=test,DC=intra",
19                                   ldap.SCOPE_SUBTREE, "(sAMAccountName=%(user)s)")
20
21#通过组进行权限控制
22AUTH_LDAP_GROUP_SEARCH = LDAPSearch("ou=groups,ou=test,dc=test,dc=intra",
23    ldap.SCOPE_SUBTREE, "(objectClass=groupOfNames)"
24)
25
26AUTH_LDAP_GROUP_TYPE = GroupOfNamesType()
27
28#is_staff:这个组里的成员可以登录;is_superuser:组成员是django admin的超级管理员;is_active:组成员可以登录django admin后天,无权限
29AUTH_LDAP_USER_FLAGS_BY_GROUP = {
30    "is_staff": "cn=test_users,ou=groups,OU=test,DC=test,DC=com",
31    "is_superuser": "cn=test_users,ou=groups,OU=tset,DC=test,DC=com",
32}
33#通过组进行权限控制end
34
35#如果ldap服务器是Windows的AD,需要配置上如下选项
36AUTH_LDAP_CONNECTION_OPTIONS = {
37    ldap.OPT_DEBUG_LEVEL: 1,
38    ldap.OPT_REFERRALS: 0,
39}
40
41#当ldap用户登录时,从ldap的用户属性对应写到django的user数据库,键为django的属性,值为ldap用户的属性
42AUTH_LDAP_USER_ATTR_MAP = {
43    "first_name": "givenName",
44    "last_name": "sn",
45    "email": "mail"
46}
47
48#如果为True,每次组成员都从ldap重新获取,保证组成员的实时性;反之会对组成员进行缓存,提升性能,但是降低实时性
49# AUTH_LDAP_FIND_GROUP_PERMS = True 

配置完成后,用户通过admin后台登录时,如果域用户不在指定的group中时,会提示登录失败,但是在auth_user用户表中,会有这个用户的属性,配置了superuser的可以登录后台,代码中配置的默认账号,可以直接登录admin后天,以管理员的身份登录。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 BigYoung小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Django-auth-ldap 配置方法
公司内部使用Django作为后端服务框架的Web服务,当需要使用公司内部搭建的Ldap 或者 Windows 的AD服务器作为Web登录认证系统时,就需要这个Django-auth-ldap第三方插件
BigYoung小站
2020/05/05
3.5K0
Django集成OpenLDAP认证
Django集成LDAP认证有现成的django-auth-ldap模块可以使用,本文也主要以这个模块的使用为主,先安装模块
37丫37
2019/04/25
1.9K0
django 用户认证(电视业务认证失败怎么办)
一般在公司内部都会使用ldap系统进行用户认证。 安装 pip install django-auth-ldap 主要在settings.py的配置
全栈程序员站长
2022/08/01
9800
openldap介绍和使用
早期,公司是没有统一认证这个东西的,所以各自玩各自的。于是, confluence一个用户体系,gitlab一个用户体系,Jenkins一个用户体系等等, 开发中要用到的开源软件数不胜数,每个软件都要认证, 必须想办法统一账号。 第三系统的认证通常都是配置化的, 比如oauth, openid, ldap。兼容最广泛就是ldap了,虽然是很老的系统(LDAPv3 was developed in the late 1990's to replace LDAPv2.),最后还是要使用它。
Ryan-Miao
2019/08/20
17.2K2
CDP-DC中Hue集成FreeIPA的LDAP认证
Cloudera从CM6.3版本开始,引入了Red Hat IdM来做整个集群的认证,Red Hat IdM对应的软件为FreeIPA,在本文中描述如何使用FreeIPA来做CDP-DC集群的认证。关于FreeIPA服务器搭建参考<使用FreeIPA对Linux用户权限统一管理>。之前的文章包括<使用FreeIPA为CDP DC7.1集群部署安全>,<CDP-DC中为CM集成FreeIPA提供的LDAP认证>,<在CDP-DC中Ranger集成FreeIPA的LDAP用户>。
大数据杂货铺
2020/06/24
1.7K0
LDAP客户端认证配置与应用接入
描述:通过上一篇笔记的学习以及操作,我们已经完成吧账号属性导入了OpenLDAP中,然后通过OpenLDAP用户进行验证登陆所以我们还需对客户端进行配置; 除此之外我们还将常见的开源应用进行接入OpenLDAP之中进行应用;
全栈工程师修炼指南
2022/09/29
3.8K0
LDAP客户端认证配置与应用接入
如何使用Python连接ldap
好多使用ldap认证的软件都是Python的,比如superset和airflow, 好吧,他们都是airbnb家的。在配置ldap的时候可能会出现认证失败,你不知道是因为什么导致配置失败的。所以,就要 跟踪源码,看看内部怎么认证实现的。
Ryan-Miao
2019/08/20
2.9K0
获取域内信息工具哪家强 | 三款常用工具横向对比
在测试过程中通过漏洞获取了边界节点的控制权,但该主机不在域中,或者不是windows主机(Linux 服务器、边界网络设备),进一步测试发现,该主机和域控主机并没有隔离,掌握一定的域用户信息, 同时可以通过该主机进行流量转发。
Ms08067安全实验室
2021/07/16
3.5K0
CDP-DC中Atlas集成FreeIPA的LDAP认证
Cloudera从CM6.3版本开始,引入了Red Hat IdM来做整个集群的认证,Red Hat IdM对应的软件为FreeIPA,在本文中描述如何使用FreeIPA来做CDP-DC集群的认证。关于FreeIPA服务器搭建参考<使用FreeIPA对Linux用户权限统一管理>。之前的文章包括<使用FreeIPA为CDP DC7.1集群部署安全>,<CDP-DC中为CM集成FreeIPA提供的LDAP认证>,<在CDP-DC中Ranger集成FreeIPA的LDAP用户>,<CDP-DC中Hue集成FreeIPA的LDAP认证>,<CDP-DC中Impala集成FreeIPA的LDAP认证>。
大数据杂货铺
2020/06/24
1.9K2
Django项目如何接入公司LDAP帐号认证
Django项目开发过程中,为了保证安全性,通常都会接入用户帐号认证权限功能,而标题中LDAP是什么呢?当然这个不是本文介绍的重点,简单来说,LDAP是一种目录管理协议,通常公司用于存储员工的计算机登录帐号密码信息用的,而如果Django项目接入LDAP后,相当于登录Django站点时,可以不用再额外为使用该站点的用户去重新注册添加用户,使用者可以直接用各自的计算机登录帐号、密码登录即可。 如果想接入LDAP,前提是你们公司有LDAP服务器,当然我相信一般公司都会有,好了,闲话不说了,直接进入主题。
测试开发技术
2020/01/17
3.3K0
Django项目如何接入公司LDAP帐号认证
在CDP-DC中Ranger集成FreeIPA的LDAP用户
Cloudera从CM6.3版本开始,引入了Red Hat IdM来做整个集群的认证,Red Hat IdM对应的软件为FreeIPA,在本文中描述如何使用FreeIPA来做CDP-DC集群的认证。关于FreeIPA服务器搭建参考<使用FreeIPA对Linux用户权限统一管理>。之前的文章包括<使用FreeIPA为CDP DC7.1集群部署安全>,<CDP-DC中为CM集成FreeIPA提供的LDAP认证>。
大数据杂货铺
2020/06/19
2.2K0
Kubernetes 中的用户与身份认证授权
本章主要简单阐述 Kubernetes 认证相关原理,最后以实验来阐述 Kubernetes 用户系统的思路。主要内容:
从大数据到人工智能
2023/02/21
2.2K0
Kubernetes 中的用户与身份认证授权
LDAP基础安装与简单入门使用.md
由于其公司内部都内部各种运维系统等,当每个新员工入职就需要一个挨一个的登录到每个系统的后台给新员工开通账号,设置密码,然后员工离职还得去到每个系统后台去关闭账号,想想多浪费时间那么能不能维护一套账号,对所有系统生效呢? 当然有那就是LDAP。
全栈工程师修炼指南
2022/09/29
3.9K0
LDAP基础安装与简单入门使用.md
如何为CM集成FreeIPA提供的LDAP认证
本篇文章主要介绍如何为Cloudera Manager集成FreeIPA提供的LDAP认证。
大数据杂货铺
2020/06/17
1.9K0
如何为CM集成FreeIPA提供的LDAP认证
6.如何为Hue集成RedHat7的OpenLDAP认证
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 在前面的文章Fayson讲了《1.如何在RedHat7上安装OpenLDA并配置客户端》、《2.如何在RedHat7中实现OpenLDAP集成SSH登录并使用sssd同步用户》、《3.如何RedHat7上实现OpenLDAP的主主同步》、《4.如何为Hive集成RedHat7的
Fayson
2018/04/18
2.9K1
6.如何为Hue集成RedHat7的OpenLDAP认证
(译)Kubernetes 单点登录详解
本文中我们将会为 Kuebernetes 构建一个完备的单点登录系统,这个系统会为 kubectl、Web 应用的 Ingress,以及 Docker 镜像仓库和 Gitea 提供服务,本文中会涉及多数单点登录模型,对于 Gitlab、Kibana、Grafana 等其它应用,应该也是适用的。
Jintao Zhang
2021/06/10
6.4K0
Python 连接AD域账户,实现用户名密码验证
说明:目前在做Python的Django项目,需要与公司的域做连接,进行账号的统一管理,故此有以下代码,给有需要的同仁,
no怕不了木
2024/08/30
4470
6.如何为Hue配置OpenLDAP认证
在前面的文章Fayson讲了《1.如何在CentOS6.5安装OpenLDAP并配置客户端》、《2.OpenLDAP集成SSH登录并使用SSSD同步用户》、《3.如何实现OpenLDAP的主主同步》、《4. 如何为Hive配置OpenLDAP认证》以及《5.如何为Impala配置OpenLDAP认证》。本篇文章主要介绍如何为Hue配置OpenLDAP认证。
Fayson
2018/03/29
2.9K0
6.如何为Hue配置OpenLDAP认证
使用ldap3做后台认证
通常我们自己做的工具,都要用一套自己的账号管理系统,如果工具做得多,这些个账号管理系统又相互独立,维护和管理不是很方便。接入公司的人事系统才是一个好的选择。
赵云龙龙
2019/08/27
2.1K0
使用ldap3做后台认证
Spring Boot 2.0 项目实现自同步AD域账号 顶
在通过Spring Boot的自动化装配功能及JDK自带的LDAP模块,可通过如下几个简单步骤实现业务系统自动同步AD域账号功能。
Michael Chen
2018/09/05
2.4K0
相关推荐
Django-auth-ldap 配置方法
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档