亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

LDAP開發小結

2019-11-14 15:36:48
字體:
來源:轉載
供稿:網友

寫在前面

由于最近的一個項目的需求是要是需要讀取AD域里面的一些數據,然后保存到數據庫中,所以對LDAP這個東西進行了一些研究。

    感謝以下鏈接提供的資料 :

    http://wibiline.VEvb.com/blog/1840739

    http://aa00aa00.VEvb.com/blog/1276936

    http://www.49028c.com/forbreak/archive/2012/10/30/2746464.html

    http://cgs1999.VEvb.com/blog/1574635

    http://www.49028c.com/awpatp/archive/2010/02/14/1668097.html

 

項目需求

已知一個節點 "CN=Authorization2,CN=PRogram Data Test,DC=cayzlh,DC=com",需要得到節點下的某個節點里面的相關屬性,然后提取出來,保存到數據庫中。

解決問題

  1. 獲得LDAP連接

    1. public class LdapADHelper {
    2.    private final String URL = "ldap://"+"192.168.1.204:389";
    3.    private final String ADMINNAME = "test@test.com";
    4.    private final String ADMINPASSWord = "test123";
    5.    private LdapContext ctx = null;
    6.  
    7.    public static LdapADHelper getInstance() throws NamingException{
    8.       return new LdapADHelper();
    9.  
    10.    }
    11.    private LdapADHelper () throws NamingException {
    12.       this.initLdap();
    13.    }
    14.    /**
    15.     * 初始化ldap
    16.     * @throws NamingException
    17.     */
    18.    private void initLdap() throws NamingException {
    19.       // ad服務器
    20.       Hashtable<String, String> HashEnv = new Hashtable<String, String>();
    21.       HashEnv.put(Context.SECURITY_AUTHENTICATION, "simple"); // LDAP訪問安全級別
    22.       HashEnv.put(Context.SECURITY_PRINCipAL, this.ADMINNAME); // AD User
    23.       HashEnv.put(Context.SECURITY_CREDENTIALS, this.ADMINPASSWORD); // AD Password
    24.       HashEnv.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); // LDAP工廠類
    25.       HashEnv.put(Context.PROVIDER_URL, this.URL);
    26.       try {
    27.          ctx = new InitialLdapContext(HashEnv, null);
    28.          System.out.println("初始化ldap成功!");
    29.       } catch (NamingException e) {
    30.          e.printStackTrace();
    31.          System.err.println("Throw Exception : " + e);
    32.          throw e;
    33.       }
    34.    }
    35.    ....
    36. }

在外部類中調用這個類的getInstance()方法則可以得到helper對象并初始化好了LdapContext對象

  1. 查詢對象屬性

    1. try {
    2.    // 域節點
    3.    String searchBase = this.getBaseDnForRoleObject("CN=角色1,CN=RoleObjectDemo2,CN=msDS-AzapplicationTest2,CN=Authorization2,CN=Program Data Test,DC=cayzlh,DC=com");
    4.    // LDAP搜索過濾器類
    5.    String searchFilter = "(cn=*)";
    6.    // 創建搜索控制器
    7.    SearchControls searchCtls = new SearchControls();
    8.    // 設置搜索范圍
    9.    searchCtls.setSearchScope(SearchControls.ONELEVEL_SCOPE);
    10.    String returnedAtts[] = { "distinguishedName " }; // 定制返回屬性, 這里只需要查詢 角色1 這個對象的 distinguishedName 屬性
    11.    searchCtls.setReturningAttributes(returnedAtts); // 設置返回屬性集
    12.    // 不設置則返回所有屬性
    13.    // 根據設置的域節點、過濾器類和搜索控制器搜索LDAP得到結果
    14.    NamingEnumeration<?> answer = ctx.search(searchBase, searchFilter, searchCtls);// Search
    15.  
    16.    while (answer.hasMoreElements()) {// 遍歷結果集
    17.       // 得到符合搜索條件的DN
    18.       SearchResult sr = (SearchResult) answer.next();
    19.       // 得到符合條件的屬性集
    20.       Attributes attrs = sr.getAttributes();
    21.       if (attrs != null) {
    22.          try {
    23.             if ( attrs.getAll().hasMore() ) {
    24.                Attribute attr = (Attribute) ne.next();// 得到下一個屬性
    25.                System.out.println(attr.getAll().next().toString());
    26.                // 這里輸出得到的就是 角色1 的distinguishedName 屬性,如果要獲取有多個值的屬性, 則可以利用循環和next()方法來獲取得到這個屬性的所有值
    27.             }
    28.          } catch (NamingException e) {
    29.             e.printStackTrace();
    30.             System.err.println("Throw Exception : " + e);
    31.          }
    32.       }
    33.    }
    34. } catch (NamingException e) {
    35.    System.err.println("Throw Exception : " + e);
    36. }

工具

在開發過程中使用的工具是 ADSI編輯器在域服務中進行查看和編輯相應的屬性。打開方式如圖所示:

    

源代碼

寫了一份簡單的demo,是web版的,也許有些問題,稍微改一下就可以了。又需要的可以下載來玩玩。。

下載地址:http://files.VEVb.com/files/chenanyu/LdapTest.zip

好久好久沒有發過博客,不足之處見諒。。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品自拍视频| 成人精品久久av网站| 精品日韩中文字幕| 九九热精品视频国产| 亚洲激情电影中文字幕| 黑人极品videos精品欧美裸| xvideos成人免费中文版| 日韩福利视频在线观看| 亚洲欧美日韩精品久久亚洲区| 亚洲精品免费av| 欧美日韩亚洲系列| 国产激情综合五月久久| 亚洲福利在线播放| 亚洲欧洲av一区二区| 亚洲午夜国产成人av电影男同| 成人免费看片视频| 亚洲欧美在线磁力| 日韩欧美在线国产| 欧美在线观看一区二区三区| 日韩精品视频三区| 国产成人精品日本亚洲专区61| 81精品国产乱码久久久久久| 日本在线观看天堂男亚洲| 国产精品精品视频一区二区三区| 在线中文字幕日韩| 亚洲国产欧美一区| 色多多国产成人永久免费网站| 色99之美女主播在线视频| 日韩成人在线观看| 国产亚洲欧美视频| 国产精品久久久91| 精品无人区乱码1区2区3区在线| 久久天天躁狠狠躁夜夜躁2014| 亚洲a一级视频| 欧美精品在线第一页| 97在线视频一区| 久久影视三级福利片| 国产a∨精品一区二区三区不卡| 午夜精品久久久久久久男人的天堂| 亚洲成年人在线| 日韩一区av在线| 狠狠综合久久av一区二区小说| 日本高清+成人网在线观看| 欧美日韩激情视频| 亚洲美女自拍视频| 成人有码在线播放| 亚洲娇小xxxx欧美娇小| 欧美日韩亚洲一区二区| 欧美黑人性视频| 久久久精品国产| 中国人与牲禽动交精品| 欧美视频一二三| 奇门遁甲1982国语版免费观看高清| 亚洲电影av在线| 亚洲精品国产精品自产a区红杏吧| 久久精品青青大伊人av| 九色精品免费永久在线| 在线精品视频视频中文字幕| 国产精品久久久久久av福利软件| 成人乱人伦精品视频在线观看| 日韩欧美在线观看| 亚洲欧美国产一本综合首页| 日韩大陆毛片av| www.99久久热国产日韩欧美.com| 国产精品中文在线| 亚洲成av人影院在线观看| 欧美体内谢she精2性欧美| 欧美激情亚洲综合一区| 不卡在线观看电视剧完整版| 欧美一级大片视频| 日韩av理论片| 亚洲成av人片在线观看香蕉| 亚洲激情视频在线| 亚洲影院色在线观看免费| 91精品视频免费看| 国产成人精品日本亚洲| 亚洲精品videossex少妇| 91tv亚洲精品香蕉国产一区7ujn| 欧美精品一区在线播放| 欧美日韩国产第一页| 日韩电影在线观看永久视频免费网站| 中文字幕亚洲一区二区三区五十路| 国内精品久久久| 精品久久久久久中文字幕| 狠狠躁夜夜躁人人爽超碰91| 亚洲精品大尺度| 亚洲色图欧美制服丝袜另类第一页| 欧美亚洲免费电影| 精品久久久久久久久中文字幕| 一区二区三区久久精品| 国产欧美精品xxxx另类| 亚洲天堂2020| 久久国产一区二区三区| 美女av一区二区| 成人精品久久一区二区三区| 国产精品福利无圣光在线一区| 欧美激情精品久久久久久免费印度| 欧美日韩久久久久| 日本久久精品视频| 在线国产精品播放| 国产欧美日韩亚洲精品| 欧美激情视频播放| 精品美女久久久久久免费| 国产精品无码专区在线观看| 国产成人综合精品| 1769国内精品视频在线播放| 欧美大尺度在线观看| 久久乐国产精品| 成人97在线观看视频| 国产精品91视频| 国产精品一区二区三区毛片淫片| 色久欧美在线视频观看| 亚洲黄在线观看| 韩国三级日本三级少妇99| 亚洲第一二三四五区| 精品日本美女福利在线观看| 自拍亚洲一区欧美另类| 国产一区二区欧美日韩| 亚洲美女精品成人在线视频| 亚洲美女在线观看| 综合激情国产一区| 欧美精品久久久久久久久| 91精品国产色综合久久不卡98口| 亚洲一品av免费观看| 亚洲欧美中文日韩v在线观看| 久久免费观看视频| 成人黄色影片在线| 亚洲色图偷窥自拍| 97国产一区二区精品久久呦| 久久精品国产欧美激情| 亚洲国产精品久久久久秋霞不卡| 91视频免费网站| 欧美自拍大量在线观看| 亚洲情综合五月天| 日本一区二区三区四区视频| 亚洲色图日韩av| 92看片淫黄大片欧美看国产片| 国产一区二区三区精品久久久| 久久精品视频va| 国产精品精品视频| 国产精品www色诱视频| 精品中文字幕在线2019| 久久国产视频网站| 日韩av成人在线观看| 国产精品影片在线观看| 日韩av在线影院| 91在线无精精品一区二区| 大荫蒂欧美视频另类xxxx| 亚洲欧美日韩国产精品| 日韩中文字幕国产精品| 欧美精品一区在线播放| 伦理中文字幕亚洲| 日韩中文字幕在线| 欧美日韩电影在线观看| 日韩国产精品视频| 在线电影欧美日韩一区二区私密| 精品亚洲一区二区三区在线观看| 精品久久久久久久久久ntr影视| 欧美成人免费在线视频| 国产精品国产三级国产专播精品人| 日韩久久免费电影| 国产欧美精品一区二区| 国产成人精品久久二区二区91| 一本久久综合亚洲鲁鲁|