前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Django项目如何接入公司LDAP帐号认证

Django项目如何接入公司LDAP帐号认证

作者头像
测试开发技术
发布于 2020-01-17 09:01:03
发布于 2020-01-17 09:01:03
3.3K00
代码可运行
举报
文章被收录于专栏:测试开发技术测试开发技术
运行总次数:0
代码可运行

点击上方“公众号”可以订阅哦!

一、前言

Django项目开发过程中,为了保证安全性,通常都会接入用户帐号认证权限功能,而标题中LDAP是什么呢?当然这个不是本文介绍的重点,简单来说,LDAP是一种目录管理协议,通常公司用于存储员工的计算机登录帐号密码信息用的,而如果Django项目接入LDAP后,相当于登录Django站点时,可以不用再额外为使用该站点的用户去重新注册添加用户,使用者可以直接用各自的计算机登录帐号、密码登录即可。 如果想接入LDAP,前提是你们公司有LDAP服务器,当然我相信一般公司都会有,好了,闲话不说了,直接进入主题。

二、环境准备

1、安装python-ldap、django-auth-ldap

模块版本及下载地址,博主亲测有效! python-ldap 2.4.12 https://pypi.python.org/pypi/python-ldap/2.4.12 django-auth-ldap 1.1.4 https://pypi.python.org/pypi/django-auth-ldap/1.1.4

或直接在线安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install python-ldap -i https://pypi.douban.com/simple
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install  install django-auth-ldap -i http://pypi.douban.com/simple

三、 配置

1、setting.py配置

安装完成后,打开django项目中settings.py文件,增加ldap配置如下:

##ldap认证接入

AUTH_LDAP_SERVER_URI = 'ldap://ip:port' #ldap服务地址、端口

# AUTH_LDAP_BIND_DN = 'uid=username,ou=xx1,dc=xx2,dc=com'

# AUTH_LDAP_BIND_PASSWORD = "

AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=xx1,dc=xx2,dc=com", ldap.SCOPE_SUBTREE, "(uid=%(user)s)")

AUTH_LDAP_ALWAYS_UPDATE_USER = True

AUTH_LDAP_USER_ATTR_MAP = {

"first_name": "givenName",

"last_name": "sn",

"email": "mail"

}

AUTH_USER_MODEL = 'UserManage.Account'

AUTHENTICATION_BACKENDS = (

'django_auth_ldap.backend.LDAPBackend', # ldap认证

'UserManage.auth.UsernamePasswordAuth', ## 本地自定义model的认证方式

)

注意事项:

1、实际接入ldap中,最关键的几个参数,ldap服务器地址、端口号、ou、dc等几个值,可从公司运维部获取得知。 2、实际接入ldap中,AUTH_LDAP_BIND_DN、 AUTH_LDAP_BIND_PASSWORD 可不用配置。 3、上述配置中,博主将ou、dc替换成xx1、xx2,实际使用更改成对应值即中。

四、简要流程

登录时,在默认的django数据库帐号验证之前,会先到LDAP服务器上去验证。 输入的登录帐号到LDAP服务器验证之前,会先用配置文件中的绑定DN、密码去验证,验证通过才能继续用输入的帐号密码去LDAP服务器验证。 若LDAP验证通过,会检查django数据库中是否已存在该帐号,若不存在,则会根据LDAP验证通过后获取的用户信息,来创建django数据库的用户账号。帐号名和输入的一样,密码则会设为一个无效的密码(看了下源码是”!”,无法合法哈希编码),因为该帐号密码验证是从LDAP上进行,所以django中的密码不会被使用到。除了默认的用户姓名、邮件等信息,若要把Group信息也同步过来的话需要进行相应的配置。 若LDAP验证失败,则会使用Django数据库的默认登录验证。

欢迎关注订阅

每日一篇!

公众号:mikezhou_talk

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

本文分享自 测试开发技术 微信公众号,前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
施巍松:什么是边缘计算?
本篇翻译自施巍松教授的论文《Edge Computing : Vision and Challenges》
边缘计算
2019/07/03
1.6K0
施巍松:什么是边缘计算?
5G时代,边缘计算迎来又一爆发期!
确实如李彦宏所言,在过去的十几年里,IT技术发展的过程中遇到各种各样的困难,当然也有前所未有的革新。云计算、AI以及物联网等技术的发展,让数以亿计的移动设备接入到互联网中。这些设备每天都会产生大量的数据,随着计算的压力增加,计算开始从核心区域朝边缘设备转移,于是,边缘计算技术开始出现。
科技云报道
2022/04/15
4650
5G时代,边缘计算迎来又一爆发期!
智能家居发展困境怎么破?附硬核技术
所谓的智能家居,是以住宅为平台,利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术,将家居生活相关的设备集成起来,构建可集中管理、智能控制的住宅设施管理系统,从而提升家居的安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。
火爆的小茶壶
2022/08/23
4410
智能家居发展困境怎么破?附硬核技术
终于有人把智慧城市和边缘计算说清楚了
为了应对金融危机,使企业取得更高的利润率,IBM公司将业务重点由硬件转向软件和咨询服务,并于2008年11月提出了“智慧地球”的理念,引起了美国和全球的关注。智慧地球分成三个要素,即“3I”:物联化、互联化、智能化(Instrumentation, Interconnectedness, Intelligence),是指把新一代的IT、互联网技术充分运用到各行各业,把感应器嵌入、装备到全球的医院、电网、铁路、桥梁、隧道、公路、建筑、供水系统、大坝、油气管道,通过互联网形成“物联网”;而后通过超级计算机和云计算,使得人类以更加精细、动态的方式和生活,从而在世界范围内提升“智慧水平”,最终就是“互联网+物联网=智慧地球”。
边缘计算
2019/07/03
1.5K0
终于有人把智慧城市和边缘计算说清楚了
边缘计算与智能服务
随着信息化的不断发展,人们对互联网提出了更高的生活需求,5G、人工智能、物联网等新兴技术应运而生,万物互联已经成为一种新的发展趋势。网络技术不再只停留于原来的数字层面,在物质生活中可以提供更加智能化的服务帮助。而与物之间的密切交流带来的不仅仅是数据量的迅速提升,同时也对网络带宽和延迟提出了更高的要求。边缘计算则是通过将数据存储和计算的重心由中央数据处理中心,转移到边缘,只需要直接在终端设备进行智能化技术操作,不需要进行大量的中心设备与边缘设备间的数据处理。这样不仅可以减少数据到网络中心的等待时间,提供网络更大的连接数和终端资源分配,还可以缓解网络流量压力,更好的提供智能化服务。
边缘计算
2019/07/30
1.8K0
边缘计算与智能服务
史上最全的边缘计算应用场景
本文整理了已经基于边缘计算模型设计的6个成功典型应用,通过这些应用来发现边缘计算的研究机遇和挑战,并探讨更多的应用场景。
边缘计算
2019/07/03
2K0
史上最全的边缘计算应用场景
边缘计算:发展与挑战
摘要:通过对边缘计算的特征、整体架构及其独特优点的全面梳理,系统地阐述边缘计算关键技术的发展现状、发展趋势及面临的技术难题。此外,指出现有标准与法律法规的不足。针对边缘计算领域的发展前景,从推动因素、技术的难点以及外部挑战3个方面进行总结,展望了边缘计算的发展方向及未来需要重点攻克的安全与隐私、服务发现和用户切换等6个方面的关键技术问题。
边缘计算
2021/11/16
1.4K0
从概念到现状,一文读懂边缘计算
什么是“边缘计算”?想要弄清楚这一概念的含义,我们还得从“云计算”谈起。云计算(cloud computing)指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。用户通过网络获得应用所需的资源(硬件、平台、软件)。而提供资源的网络被称为“云”。
边缘计算
2019/09/04
6170
从概念到现状,一文读懂边缘计算
边缘计算赋能智慧城市:机遇与挑战
本文系国家重点研发计划项目和国家自然科学基金联合基金重点支持项目的阶段性研究成果,项目编号分别为:2018YFB0204100、U1911201;胡淼、吴润、陈嘉文、谢自轩等对本文亦有贡献。
边缘计算
2020/05/26
1.3K0
边缘计算赋能智慧城市:机遇与挑战
边缘计算的挑战和机遇
边缘计算面临着数据安全与隐私保护、网络稳定性等挑战,但同时也带来了更强的实时性和本地处理能力,为企业降低了成本和压力,提高了数据处理效率。因此,边缘计算既带来了挑战也带来了机遇,需要我们不断地研究和创新,以应对日益复杂的应用场景和技术需求
Francek Chen
2025/01/22
950
边缘计算的挑战和机遇
【愚公系列】软考高级-架构设计师 115-边缘计算
边缘计算(Edge Computing)是一种分布式计算范式,旨在将数据处理和存储功能从传统的集中式数据中心转移到距离数据生成源头更近的边缘设备或边缘节点上进行处理。边缘计算的主要目的是在接近数据生成源头的位置提供更快速的数据处理、减少数据传输延迟,以及降低网络流量和数据中心负载。
愚公搬代码
2024/08/18
3730
边缘计算步入“黄金年代”
当前时点,AI大模型已经站在了从“玩具”向“工具”快速演化的关键迭代期。如何让大模型渗透进入各类垂直场景,如何更低成本的使用大模型,如何让更多场景与用户接触AI,成为了发展的下一个重点。
科技云报道
2023/08/03
2490
边缘计算步入“黄金年代”
边缘计算在物联网领域的应用及发展前景
随着无线移动通信技术的快速发展,以及移动互联网、云计算的普及,加速推动了物联网及相关技术在垂直行业中的应用和落地。随之而来,一种新型的计算范式“边缘计算”开始频繁出现在我们视野中。所谓边缘计算,就是指在靠近物体或数据生成的位置处理数据的方法,采用网络、计算、存储、应用核心能力为一体的开放平台,强调就近处理数据,从而减少系统反应时间,保护数据隐私及安全,延长电池使用寿命,节省网络带宽等。以满足在实时业务、应用智能、安全与隐私保护等方面的基本需求。
边缘计算
2019/09/09
9060
边缘计算在物联网领域的应用及发展前景
浅析边缘计算的概念、架构、应用与实战
随着物联网、5G、人工智能等技术的快速发展,边缘计算作为一种新兴的计算模式,正逐渐从理论走向现实,成为推动数字化转型的关键力量。本文将深入探讨边缘计算的概念、架构特点、典型应用场景,并结合实战代码示例,系统地向读者呈现一幅完整的边缘计算技术图景。最后,本文将基于当前行业动态,对边缘计算的未来发展趋势及挑战发表笔者的观点与评价。
zhouzhou的奇妙编程
2024/04/22
3K0
互联网十万个为什么之什么是边缘计算?
边缘计算是一种计算模式,目的在于把数据处理的位置从远程集中的数据中心或云迁移到靠近数据源的地方,如用户设备或传感器附近。这种方式通过在网络的边缘处理信息,可以有效应对数据量增长和网络容量限制所带来的挑战。边缘计算通过近源处理,大幅减少了数据传输时间,降低了网络拥塞和服务延迟,同时实现了对带宽的经济性利用和更快的决策反馈,优化了整体应用性能,加强了数据处理的即时性和安全性。
linus_lin
2024/09/26
1880
互联网十万个为什么之什么是边缘计算?
原创 | 一文了解边缘计算和边缘AI
这个9月,AI芯片独角兽地平线发布了自诩最强边缘 AI 芯片地平线「旭日3」,一时间引起轰动。相比第二代芯片,「旭日3」的AI性能上得到很大提升,只需在 2.5W 的功耗下,能够达到等效 5TOPS 的标准算力。尤其是对应高端市场的旭日3M,有更强大的编解码能力,强大的ISP效果令其极具竞争力。
数据派THU
2020/10/26
1.9K0
原创 | 一文了解边缘计算和边缘AI
边缘计算和视频监控
随着我国政府对平安城市、“雪亮工程”以及交通运输等领域的投入,对于安防产品的需求不断提升,安防市场规模也在随之不断扩大。视频监控是整个安防系统最重要的物理基础,视频监控系统位于最前端,很多子系统都需要通过与其相结合才能发挥出自身的功能,是安防行业的核心环节。
边缘计算
2019/07/12
4.1K0
边缘计算和视频监控
一文轻松读懂边缘计算
边缘计算(Edge computing)是相对云计算而言的,它是指收集并分析数据的行为发生在靠近数据生成的本地设备和网络中。边缘计算又被叫做分布式云计算、雾计算或第四代数据中心。
边缘计算
2019/07/03
3.4K0
一文轻松读懂边缘计算
软考高级架构师:边缘计算概念和例题
边缘计算是一种分布式计算架构,其核心思想是将数据处理从中心云端转移到网络的边缘,即接近数据源的位置。这样做可以减少数据传输所需的带宽,减少延迟,提高处理效率,并增加系统的可靠性。
明明如月学长
2024/05/24
1580
软考高级架构师:边缘计算概念和例题
推动边缘计算的七项核心技术
年前施巍松教授和其团队(张星洲、王一帆、张庆阳)应《计算机研究与发展》编辑部之邀,庆刊60周年发表论文,边缘计算社区经过和施巍松教授沟通,将论文整理成几篇,方便大家阅读。字字珠玑,愿大家多多转发分享。
边缘计算
2019/07/03
9510
推动边缘计算的七项核心技术
推荐阅读
相关推荐
施巍松:什么是边缘计算?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验