返回顶部
首页 > 资讯 > 后端开发 > Python >python 使用ldap实例
  • 407
分享到

python 使用ldap实例

实例pythonldap 2023-01-31 02:01:55 407人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

#coding: utf-8 ldap_config = { 'ldap_path': 'ldap://xx.xx.xx.xx:389', 'base_dn': 'ou=users,dc=ledo,dc=com', 'lda

#coding: utf-8

ldap_config = {
  'ldap_path': 'ldap://xx.xx.xx.xx:389',
  'base_dn': 'ou=users,dc=ledo,dc=com',
  'ldap_user': 'uid=reporttest,ou=users,dc=ledo,dc=com',
  'ldap_pass': '111111.0',
  'original_pass': '111111.0'
}
ldap_message = {
  0: 0, #'ok'
  1: 1, #'用户名或密码错误'
  2: 2, #ldap验证异常'
}
import ldap
import base64
import hashlib
from config_message import ldap_config, ldap_message
class LDAP_api(object):
  _ldap_path = ldap_config['ldap_path']
  _base_dn = ldap_config['base_dn']
  _ldap_user = ldap_config['ldap_user']
  _ldap_pass = ldap_config['ldap_pass']
  _original_pass = ldap_config['original_pass']
  # 连接ldap服务器
  def __init__(self):
    try:
      self.ldapconn = ldap.initialize(self._ldap_path)
      self.ldapconn.protocal_version = ldap.VERSION3
      self.ldapconn.simple_bind(self._ldap_user, self._ldap_pass)
    except ldap.LDAPError, e:
      print e
  # 验证用户登录
  def ldap_check_login(self, username, passWord):
    obj = self.ldapconn
    searchScope = ldap.SCOPE_SUBTREE
    # searchFilter = '(&(cn='+username+')(userPassword='+password+'))'
    searchFilter = 'uid=' + username
    try:
      obj.search(self._base_dn, searchScope, searchFilter, None) # id--2
      # 将上一步计算的id在下面运算
      result_type, result_data = obj.result(2, 0)
      if result_type != ldap.RES_SEARCH_ENTRY:
        return {'status': ldap_message[1], 'data': ''}
      dic = result_data[0][1]
      l_realname = dic['sn'][0]
      l_password = dic['userPassword'][0]
      md_password = LDAP_API.hash_md5(password)
      if l_password in (password, md_password):
        return {'status': ldap_message[0], 'data': l_realname}
      else:
        return {'status': ldap_message[1], 'data': ''}
    except ldap.LDAPError, e:
      return {'status': ldap_message[2], 'data': ''}
  @staticmethod
  def hash_md5(data):
    md = hashlib.md5()
    md.update(str(data))
    a = md.digest()
    b = '{MD5}' + base64.b64encode(a)
    return b

--结束END--

本文标题: python 使用ldap实例

本文链接: https://lsjlt.com/news/186504.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python 使用ldap实例
    #coding: utf-8 ldap_config = { 'ldap_path': 'ldap://xx.xx.xx.xx:389', 'base_dn': 'ou=users,dc=ledo,dc=com', 'lda...
    99+
    2023-01-31
    实例 python ldap
  • python+ldap实例
    Python 如何进行域账号的校验?当然是操作ldap. 首先需要安装python-ldap的模块 http://www.python-ldap.org/。 在这里用的是windows系统,当然比较容易,下载地址 http://pypi....
    99+
    2023-01-31
    实例 python ldap
  • Python ldap实现登录实例代码
    下面一段代码是小编给大家介绍的Python ldap实现登录实例代码,一起看看吧 ldap_config = { 'ldap_path': 'ldap://xx.xx.xx.xx:389', '...
    99+
    2022-06-04
    实例 代码 Python
  • 使用 Python-LDAP 操作 LD
    转自:http://www.vpsee.com/ 周末看到那些排队血拼的人们,不用走进 shopping mall、不用看到那些五颜六色的打折和视觉冲击就能感受到 “节日要到了!”。一年又快结束了,这周完成备份、升级之类的收尾工作,接...
    99+
    2023-01-31
    操作 Python LDAP
  • Python使用LDAP做用户认证
    LDAP(Light Directory Access Portocol)是轻量目录访问协议,基于X.500标准,支持TCP/IP。 LDAP目录以树状的层次结构来存储数据。每个目录记录都有标识名(Distinguished Name,简...
    99+
    2023-01-30
    用户 Python LDAP
  • JAVA_基本LDAP操作实例
    一、简介 Lightweight Directory Access Protocol (LDAP),轻型目录访问协议是一个访问在线目录服务的协议。下面的例子中简单介绍在java中队...
    99+
    2022-11-15
    JAVA LDAP
  • node.js下LDAP查询实例分享
    目标: 从一个LDAP Server获取uid=kxh的用户数据 LDAP地址为:ldap://10.233.21.116:389 在工程根目录中,先npm一个LDAP的访问库ldpajs npm inst...
    99+
    2022-06-04
    实例 node js
  • 如何使用FreeRadius +LDAP实现验证功能
    这篇文章将为大家详细讲解有关如何使用FreeRadius +LDAP实现验证功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。------ LDAP 的部份 ---------  首先,當然是要...
    99+
    2023-06-03
  • 使用带有 spring LDAP API 的 LDAP 进行身份验证
    要使用Spring LDAP API进行身份验证,您需要完成以下步骤:1. 添加Spring LDAP依赖项:首先,您需要将Spri...
    99+
    2023-09-26
    spring
  • Softerra LDAP Browser使用及配置
    Softerra LDAP Browser 是一种用于浏览和编辑 Lightweight Directory Access Prot...
    99+
    2023-09-23
    Softerra
  • python中pip使用实例
    小编给大家分享一下python中pip使用实例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!pip使用实例1 安装redis#&...
    99+
    2024-04-02
  • ​Softerra LDAP Browser怎么使用及配置
    Softerra LDAP Browser是一款用于浏览和编辑Lightweight Directory Access Protoc...
    99+
    2023-10-23
    LDAP
  • 如何使用PHP和LDAP实现用户组管理和授权
    要使用PHP和LDAP实现用户组管理和授权,需要遵循以下步骤:1. 连接到LDAP服务器:使用`ldap_connect()`函数连...
    99+
    2023-08-28
    PHP
  • python中bottle使用实例代码
    模仿学习同事的代码来写的,主要是搞懂python中如何来组织包,如何调用包,如何读取配置文件,连接数据库,设置路由,路由分组。(注:使用的是python3.6) 整体目录设计如下: 根据调用层级从上往下来说: 首先...
    99+
    2022-06-02
    python bottle使用 python bottle
  • python使用reportlab生成pdf实例
    目录Intro功能点预览完整代码使用场景1:生成文件使用场景2:web(flask)总结Intro 项目中遇到需要 导出统计报表 等业务时,通常需要 pdf 格式。python 中比...
    99+
    2024-04-02
  • Python使用技巧实例分析
    今天小编给大家分享一下Python使用技巧实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。first库没错,就是fir...
    99+
    2023-07-02
  • python email模块的使用实例
    在使用python过程中,需要用的email模块来进行邮件的发送和接收,包含自定义邮件的中文、主题、日期、附件等信息,以下是我使用email模块来发送一个测试报告相关信息的邮件的例子: #!/usr/bin/python # -*- co...
    99+
    2023-01-31
    实例 模块 python
  • 配置Linux使用LDAP用户认证的方法
    我这里使用的是CentOS完成的LDAP用户管理,可能与网上的大部分教程不同,不过写出来了,那么是肯定能用的了,不过会有部分文件,忘指教。 这里使用的 OPENLdap 配合 CentOS7 完成的用户管理,需要配置 n...
    99+
    2022-06-04
    配置Linux LDAP用户认证
  • python实例方法的使用注意及代码实例
    1、实例方法是从属于实例对象的方法,定义实例方法时,第一个参数必须为 self。self 指当前的实例对象。 2、调用实例方法是,不需要也不能给 self 传值,self 由解释器自...
    99+
    2022-11-21
    python 实例方法
  • Python类与实例的使用详解
    目录视频使用类和实例修改属性值视频 本课程的视频 使用类和实例 你可以使用类来模拟现实世界中的很多情景。类编写好后,你的大部分时间都将花在使用根据类创建的实例上。你需要执行的一个重要...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作