下面一段代码是小编给大家介绍的Python ldap实现登录实例代码,一起看看吧
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
标签:
python,ldap,登录
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“Python ldap实现登录实例代码”评论...
更新动态
2026年04月17日
2026年04月17日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]