最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python ldap實(shí)現(xiàn)登錄實(shí)例代碼

 更新時間:2016年09月30日 13:59:26   作者:張瑜  
今天給大家分享python idap實(shí)現(xiàn)登錄的實(shí)例代碼,代碼簡單易懂,需要的朋友一起看看吧

下面一段代碼是小編給大家介紹的Python ldap實(shí)現(xiàn)登錄實(shí)例代碼,一起看看吧

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驗(yàn)證異常'
}
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服務(wù)器
  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
  # 驗(yàn)證用戶登錄
  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
      # 將上一步計(jì)算的id在下面運(yùn)算
      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

相關(guān)文章

  • python爬蟲正則表達(dá)式之處理換行符

    python爬蟲正則表達(dá)式之處理換行符

    本文是腳本之家小編剛學(xué)習(xí)python記錄的關(guān)于python爬蟲正則表達(dá)式之處理換行符的相關(guān)資料,需要的朋友可以參考下
    2018-06-06
  • python paramiko模塊學(xué)習(xí)分享

    python paramiko模塊學(xué)習(xí)分享

    這篇文章主要為大家分享了python paramiko模塊的學(xué)習(xí)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • python?Sweetviz探索性數(shù)據(jù)可視化分析庫使用特征詳解

    python?Sweetviz探索性數(shù)據(jù)可視化分析庫使用特征詳解

    這篇文章主要為大家介紹了python?Sweetviz探索性數(shù)據(jù)可視化分析庫特征使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python Json讀寫操作之JsonPath用法詳解

    Python Json讀寫操作之JsonPath用法詳解

    JSONPath是一種信息抽取類庫,是從JSON文檔中抽取指定信息的工具,提供多種語言實(shí)現(xiàn)版本,包括Javascript、Python、PHP和Java,這篇文章主要介紹了Python Json讀寫操作之JsonPath用法詳解,需要的朋友可以參考下
    2023-04-04
  • django中的自定義分頁器的實(shí)現(xiàn)示例

    django中的自定義分頁器的實(shí)現(xiàn)示例

    本文主要介紹了django中的自定義分頁器的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Python 爬蟲學(xué)習(xí)筆記之多線程爬蟲

    Python 爬蟲學(xué)習(xí)筆記之多線程爬蟲

    本文給大家介紹的是python基于XPath實(shí)現(xiàn)多線程爬蟲的實(shí)例以及XPath的介紹安裝和簡單用法,非常的細(xì)致,有需要的小伙伴可以參考下
    2016-09-09
  • 詳解Python中文分詞而生的jieba庫

    詳解Python中文分詞而生的jieba庫

    這篇文章主要介紹了詳解Python中文分詞而生的jieba庫,在Python中,最好用的中文分詞庫是jieba。用“結(jié)巴”給一個中文分詞庫命名,非常生動形象,同時還帶有一種程序員式的幽默感,需要的朋友可以參考下
    2023-07-07
  • 利用Python如何畫一顆心、小人發(fā)射愛心

    利用Python如何畫一顆心、小人發(fā)射愛心

    這篇文章主要給大家介紹了關(guān)于利用Python如何畫一顆心、小人發(fā)射愛心的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 詳解python itertools功能

    詳解python itertools功能

    itertools是python內(nèi)置的模塊,使用簡單且功能強(qiáng)大,這里嘗試匯總整理下,并提供簡單應(yīng)用示例,這篇文章主要介紹了python itertools功能,需要的朋友可以參考下
    2020-02-02
  • 教你利用pygame模塊制作跳躍小球小游戲

    教你利用pygame模塊制作跳躍小球小游戲

    pygame是一個專門設(shè)計(jì)來進(jìn)行游戲開發(fā)設(shè)計(jì)的Python模塊,因?yàn)閿[脫了被低級語言(如機(jī)器語言和匯編語言)的束縛,使用起來非常的簡單,這篇文章主要給大家介紹了關(guān)于如何利用pygame模塊制作跳躍小球小游戲的相關(guān)資料,需要的朋友可以參考下
    2021-08-08

最新評論

岚皋县| 始兴县| 县级市| 宜城市| 柞水县| 文安县| 五原县| 永清县| 镇宁| 平安县| 浪卡子县| 合作市| 焉耆| 大城县| 同心县| 岗巴县| 林州市| 昆山市| 南皮县| 崇州市| 京山县| 新营市| 广宁县| 浑源县| 富源县| 渝北区| 延寿县| 台北县| 宜丰县| 建水县| 西林县| 江西省| 绥阳县| 敖汉旗| 邛崃市| 二手房| 星子县| 宁明县| 清水县| 涞源县| 亳州市|