Ldap3 库使用方法(一)

Stella981
• 阅读 711

Ldap3库介绍

ldap3是一个纯Python的LDAP管理库。
项目地址:(https://github.com/cannatag/ldap3)
指导文档:http://ldap3.readthedocs.org

使用场景

一般我们公司会用到账号密码系统,常见的有Windows的AD服务器、Linux系统下的OpenLdap账号系统。

默认状态下,我们都是通过AD或者OpenLDAP管理方式对账号和密码进行维护。但是我们希望通过程序自动化管理账号,对接人事系统,账号能够自动的增减和修改密码。

使用教程

  1. 安装ldap3

前提:
先正确安装python3 和pip3

安装:

1pip install ldap3

检验结果:

python环境下,执行

1import ldap3

能够正常导入,说明安装成功

  1. ldap3的基础功能

连接服务器:

1234567891011121314151617181920`from ldap3 import Server, Connection, NTLM

def test():    # 加密连接AD服务器    server1 = Server("xxx.xxx.xxx.xxx", port=636, use_ssl=True, get_info=ALL, connect_timeout=5)    # 非加密连接AD服务器    server2 = Server("xxx.xxx.xxx.xxx", get_info=ALL, connect_timeout=5)    conn = Connection( #配置服务器连接参数    server = server1, # 如果加密连接使用server1,非加密连接使用server2  auto_bind = True,    authentication = NTLM, #连接Windows AD需要配置此项,要是连接OpenLDAP不要配置    read_only = False, #对AD只读配置,要修改数据:配置True    user = username,# 管理员账户    password = password,# 管理员账户对应的密码    fast_decoder=True,    check_names=True,    )      return conn.user if name == 'main':      print(test())`

如果能够这正确输出连接服务器的管理员账户信息,即连接成功

本文分享自微信公众号 - BigYoung小站(bigyoungs)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Easter79 Easter79
3年前
sql server 运维时CPU,内存,操作系统等信息查询(用sql语句)
我们只要用到数据库,一般会遇到数据库运维方面的事情,需要我们寻找原因,有很多是关乎处理器(CPU)、内存(Memory)、磁盘(Disk)以及操作系统的,这时我们就需要查询他们的一些设置和内容,下面讲的就是如何查询它们的相关信息。1、(1)获取数据库服务器CPU核数等信息(只适用于SQL2005以及以上版本数据库)/\\\\\\
Stella981 Stella981
3年前
Python Excel Tutorial 指南
安装有几种不同的安装方法。下面是以xlrd为例的,其它二个库都是使用同样的步骤。从源码安装Linux系统:Python代码  !收藏代码(http://www.iteye.com/images/icon_star.png)(http://my.oschina.net/taisha/admin)1.$ tar 
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
mysql企业实战(一)
一、简介MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQLAB公司开发、发布并支持的。有以下特点:MySQL是一种数据库管理系统。MySQL是一种关联数据库管理系统。MySQL软件是一种开放源码软件。MySQL数据库服务器具有快速、可靠和易于使用的特点。MySQL服务器工作在
Stella981 Stella981
3年前
LNMP架构介绍 MySQL安装 PHP安装 Nginx介绍
LNMP架构介绍LNMP的简介:LNMP代表的就是:Linux系统下NginxMySQLPHP这种网站服务器架构。Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Mysql是一个小型关系型数据库管理系统。PHP是一种在服务器端执行的嵌
Wesley13 Wesley13
3年前
MySQL系列(一)
一、简介MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQLAB公司开发、发布并支持的。有以下特点:MySQL是一种数据库管理系统。MySQL是一种关联数据库管理系统。MySQL软件是一种开放源码软件。MySQL数据库服务器具有快速、可靠和易于使用的特点。MySQL服务器工作在客户端/服务器模
Stella981 Stella981
3年前
CentOS7 系统搭建 Gitblit 服务器
CentOS7系统搭建Gitblit服务器第一步介绍:Gitblit是一个开源的应用软件,是一个纯Java库用来管理、查看和处理Git仓库。它的设计主要是为那些想举办小型工作组集中存储库工具。官网:http://www.gitblit.com/(https://www.oschina.net/action/GoToLink?u
Stella981 Stella981
3年前
Python MongoDB使用初步
MongoDB是由C语言编写的,是一个基于分布式文件存储的开源数据库系统。它是一个面向文档存储的数据库,操作起来比较简单。可通过本地或者网络创建数据镜像,具有很强的可扩展性。MongoDB支持的编程语言有Ruby,Python,Java,C,C,PHP等。本文以Windows平台为例,介绍Windows下MongoDB的安装和使用方法。
掌握了这几个 Linux 命令可以让你工作效率提升三倍
很多程序员熟悉了在Windows环境下开发,而我们服务器一般都是Linux系统。当有一天你需要在Linux服务器上做一些配置或者故障排除的时候,你会很困惑,不知道如何下手。原因是对Linux常用的命令还不熟悉,今天我就给大家介绍几个Linux常用命令。掌握它们的用法后,我们在使用CRMEB打通版系统的时候就能如鱼得水,可以大大提高工作