本篇文章給大家分享的是有關(guān)如何使用Ldap3 庫(kù)如何獲取AD中用戶和部門,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供二道網(wǎng)站建設(shè)、二道做網(wǎng)站、二道網(wǎng)站設(shè)計(jì)、二道網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、二道企業(yè)網(wǎng)站模板建站服務(wù),10余年二道做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
今天給大家講解如何使用Ldap3 庫(kù)如何獲取AD中用戶和部門(OU)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
from ldap3 import ALL_ATTRIBUTES
# 注意:ldap3庫(kù)如果要使用tls(安全連接),需要ad服務(wù)先安裝并配置好證書服務(wù),才能通過(guò)tls連接,否則連接測(cè)試時(shí)會(huì)報(bào)LDAPSocketOpenError('unable to open socket'
# 如果是進(jìn)行賬號(hào)密碼修改及賬戶激活時(shí),會(huì)報(bào)錯(cuò):“WILL_NOT_PERFORM”
from ldap3 import Connection, NTLM, Server
from ldap3 import MODIFY_REPLACE
server1 = Server("adtest.com", port=636, use_ssl=True, get_info=ALL, connect_timeout=5)
LDAP_SERVER_POOL = [server1]
SERVER_USER = 'adtest\\administrator'
SERVER_PASSWORD = "XXXXXXX"
class AD(object):
''' AD用戶操作 '''
def __init__(self):
'''初始化'''
self.conn = Connection( #配置服務(wù)器連接參數(shù)
server=LDAP_SERVER_POOL,
auto_bind=True,
authentication=NTLM, #連接Windows AD需要配置此項(xiàng)
read_only=False, #禁止修改數(shù)據(jù):True
user=SERVER_USER,#管理員賬戶
password=SERVER_PASSWORD,
)
self.leaved_base_dn = 'ou=Leaved,dc=adtest,dc=intra'#離職賬戶所在OU
self.active_base_dn = 'ou=測(cè)試部門,dc=adtest,dc=intra'#正式員工賬戶所在OU
self.search_filter = '(objectclass=user)'#只獲取【用戶】對(duì)象
self.ou_search_filter = '(objectclass=organizationalUnit)'#只獲取【OU】對(duì)象
def users_get(self):
'''獲取所有的用戶'''
self.conn.search(search_base=self.active_base_dn,search_filter=self.search_filter,attributes=ALL_ATTRIBUTES)
res = self.conn.response_to_json()
res = json.loads(res)['entries']
return res
def OU_get(self):
'''獲取所有的OU'''
self.conn.search(search_base=self.active_base_dn,search_filter=self.ou_search_filter,attributes=ALL_ATTRIBUTES)
res = self.conn.response_to_json()
res = json.loads(res)['entries']
return res
以上就是如何使用Ldap3 庫(kù)如何獲取AD中用戶和部門,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。