请教下各位LDAP高手

问题描述

我用java连接LDAP做用户认证,LDAP里面的密码是经过DES(crypt)加密过的,认证就不能通过,如果LDAP里面的密码是SHA方式加密的,认证就能通过,请问各位高手这是为什么啊?程序如下:publicclassUserAuthenticate{privateStringURL="LDAP://10.72.0.50:389/";privateStringBASEDN="dc=hntobacco,dc=com";privateStringFACTORY="com.sun.jndi.ldap.LdapCtxFactory";privateLdapContextctx=null;privateHashtableenv=null;privateControl[]connCtls=null;privatevoidLDAP_connect(){env=newHashtable();env.put(Context.INITIAL_CONTEXT_FACTORY,FACTORY);env.put(Context.PROVIDER_URL,URL+BASEDN);//LDAPserverenv.put(Context.SECURITY_AUTHENTICATION,"simple");//此处若不指定用户名和密码,则自动转换为匿名登录try{ctx=newInitialLdapContext(env,connCtls);}catch(javax.naming.AuthenticationExceptione){System.out.println("Authenticationfaild:"+e.toString());}catch(Exceptione){System.out.println("Somethingwrongwhileauthenticating:"+e.toString());}}privateStringgetUserDN(Stringuid){StringuserDN="";LDAP_connect();try{SearchControlsconstraints=newSearchControls();constraints.setSearchScope(SearchControls.SUBTREE_SCOPE);NamingEnumerationen=ctx.search("","uid="+uid,constraints);//TheUIDyouaregoingtoquery,*meansallnodesif(en==null){System.out.println("HavenoNamingEnumeration.");}if(!en.hasMoreElements()){System.out.println("Havenoelement.");}while(en!=null&&en.hasMoreElements()){//maybemorethanoneelementObjectobj=en.nextElement();if(objinstanceofSearchResult){SearchResultsi=(SearchResult)obj;userDN+=si.getName();userDN+=","+BASEDN;}else{System.out.println(obj);}System.out.println();}}catch(Exceptione){System.out.println("Exceptioninsearch():"+e);}returnuserDN;}publicbooleanauthenricate(StringID,Stringpassword){booleanvalide=false;StringuserDN=getUserDN(ID);//Stringsecretmthod="DES";try{ctx.addToEnvironment(Context.SECURITY_PRINCIPAL,userDN);ctx.addToEnvironment(Context.SECURITY_CREDENTIALS,password);//ctx.addToEnvironment(Context.REFERRAL,secretmthod);ctx.reconnect(connCtls);System.out.println(userDN+"isauthenticated");valide=true;}catch(AuthenticationExceptione){System.out.println(userDN+"isnotauthenticated");System.out.println(e.toString());valide=false;}catch(NamingExceptione){System.out.println(userDN+"isnotauthenticated");valide=false;}returnvalide;}publicstaticvoidmain(Stringargs[]){UserAuthenticateua=newUserAuthenticate();ua.authenricate("liudb","2");}}

解决方案

解决方案二:
该回复于2009-07-17 09:26:43被版主删除

时间: 2024-07-29 09:04:38

请教下各位LDAP高手的相关文章

移动开发-新手求助objective-c,请教下我吧

问题描述 新手求助objective-c,请教下我吧 新手求助为什么出现这样的问题,求指导,试来试去都是这样,高手们可以告诉告诉我嘛?开发-新手求助objective-c,请教下我吧-田字格ps新手求助"> 解决方案 你的app ID需要先在app store的账号上绑定 解决方案二: 非常感谢你了

url asp 跳转-请教下 无损外链跳转url.asp?url=http://xxx

问题描述 请教下 无损外链跳转url.asp?url=http://xxx 以下代码如何实现过滤以 http ftp www https 开头的网址 修改前链接格式为 域名/url.asp?url=http://www.baidu.com 修改后链接格式为 域名/url.asp?url=baidu.com 请高手指点 谢谢. <% dim url dim baiyea_url baiyea_url=request("url") Response.Redirect baiyea_u

java接口类型作为成员变量,请教下大家

问题描述 java接口类型作为成员变量,请教下大家 先有一个接口A,类B实现了接口A,而接口A的引用作为类B的一个成员变量,怎么理解这种写法??新手不太明白,谢谢大家 解决方案 面向借口的变成有一个最大的好处是方便扩展.B类中有一个成员变量的类型是A,比如说再有一个C impl A,那么B 中可以存放C对象,如果还有另外一个D也impl了A,同样也可以存放D的实例化对象(java的三大特性之一:多态),在不确定的情况下,就只好定义接口A,又下级调用者赋值,最根本的目的是为了程序的可扩展性. 解决

技术-请教下啊,在WEx5下面开发,和在phoneGap下面开发哪个更好呢?

问题描述 请教下啊,在WEx5下面开发,和在phoneGap下面开发哪个更好呢? 目前面临着技术方案选型,框架选择wex5还是phoneGap哪个更好呢?理由是什么? 如果是前端比较简单,但是用户量很大的系统,应该选择哪种后台的开发技术好呢? 解决方案 区别: 1.wex5:源于国内自主研发起步公司的软件,主要进行app,微信端的开发,目前而言针对android和ios的比较多,是基于HTML5.CSS3的开发,是通过图形化界面调用组件设计UI, 后台用requireJS来进行代码编写,适用范围

整么做-请教下这个题该如何列式

问题描述 请教下这个题该如何列式 11.某人有50万元的资金用于长期投资,可供选择的投资项目包括购买国库券,购买公司债券,投资房地产,购买股票或银行保值储蓄等.不同投资方式的具体参数见表,投资者希望投资组合的平均年限不超过5年,平均的期望收益不低于13%,风险系数不超过4,收益的增长潜力不低于10%.问在满足上述要求的前提下投资者该如何投资,才能使平均年收益最高.序号 投资方式 投资期限/年 年收益率/% 风险系数 增长潜力/%1 国库券 3 11 1 02 公司债券 10 15 3 153 房

版主您好,关于您的Opencv3书本的分水岭算法的分析,第337页的标记目标图有个不明确地方请教下

问题描述 版主您好,关于您的Opencv3书本的分水岭算法的分析,第337页的标记目标图有个不明确地方请教下 请问个问题,关于您的书Opencv3第337页的line(g__maskimage为什么不可以改成line(maskimage也就是直接把分水岭种子布在结果图上,而要多一个中间掩膜图步骤然后还要再寻找轮廓和绘制轮廓?直接花在结果图maskimage上,不就省了_从g_maskimage上findcontours()再drawcontours(0到maskimage这个过程了吗? 解决方案

请教下如何按照一定比例几个list的数据添加到一个list中,使得最终数据呈比例排列呢?

问题描述 请教下如何按照一定比例几个list的数据添加到一个list中,使得最终数据呈比例排列呢? 请教下一个算法问题,有个final Arraylist,取名为f吧,有3个a, b, c list,里面的数据分别是30, 10, 30. 现在需要按照3:2:1的比例将a, b, c list里面的数据添加到f list中去,final list里面的数据要变成aaa bb c aaa bb c ....这种按比例排列方式. a, b, c这3个list的数据,不一定同时来的.可能a数据来了,然

这个3D全景太漂亮了,想请教下怎么实现

问题描述 网站链接http://www.jc8.cn/space.php?user=jcjbljj&part=quanjing不是广告,只是看到效果太漂亮了,请教下大家实现的思路,谢谢. 解决方案 http://wenku.baidu.com/view/667302260722192e4536f663.html

link环境下制作《网盘软件》,请教下如果使用“虚拟主机”,性能上和一般服务器差多少?

问题描述 link环境下制作<网盘软件>,请教下如果使用"虚拟主机",性能上和一般服务器差多少? link环境下制作<网盘软件>,请教下如果使用"虚拟主机",性能上和一般服务器差多少? 解决方案 虚拟主机在一个服务器上托管多个网站,性能和安全性略差,建议使用vps.