JAVA,OpenLDAP使用心得.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA,OpenLDAP使用心得

http://njc?JAVA,OpenLDAP使用心得//如何安装已经在官方文档有了,一步步的照着做就可以/usr/local/etc/openldap/slapd.conf中可以找到schema,pid以及数据库文件存放的路径我修改了/usr/local/etc/openldap/slapd.conf文件,但是发现没啥用,原来是忘了把slapd停止重新启动了。关于停止slapd,官方给的是:kill -INT cat /usr/local/var/slapd.pid但是我执行以后提示bash: kill: cat /usr/local/var/slapd.pid: arguments must be process or job IDs用find /usr -name slapd.pid命令找到了在/usr/local/var/run/下,把命令改为:kill -INT `cat /usr/local/var/run/slapd.pid`重新运行slapd:su root -c /usr/local/libexec/slapd建议执行/usr/local/libexec/slapd -d256 命令,这样既可以在命令行看到出错信息,也可以用Ctrl+C停止进程关于rootpw,很多地方都说rootpw和密码值之间不能加空格,不然会出错。有个解决的办法:rootpw secret? 加了双引号,只要输入的密码和引号里面的对应就可以了。很多人在测试ldapadd命令时,都遇到过ldap_bind: Invalid credentials(49)错误,看看rootdn????????? cn=Manager,dc=example,dc=com和自己的ldif里面的dn参数是不是匹配,如果不匹配就需要修改,修改后记得要停止重启哦(我还不知道怎么重新读取配置的方法,只能用这种笨方法了)折腾了一天,终于初步了解JAVA怎么在OpenLDAP增加删除数据了。代码如下/**?*?* @author chenyi?*/import java.util.Hashtable;import javax.naming.Context;import javax.naming.NamingException;import javax.naming.directory.*;import java.util.*;public class ChenYi {??? DirContextctx = null;??? String account = Manager;//操作LDAP的帐户。默认就是Manager。??? String password = secret;//帐户Manager的密码。??? String root = dc=example,dc=com; //LDAP的根节点的DC??? publicChenYi() {??????? init();??????? add();??????? //delete();??????? close();??? }??? public void init() {??????? Hashtableenv = new Hashtable();??????? env.put(Context.INITIAL_CONTEXT_FACTORY, com.sun.jndi.ldap.LdapCtxFactory);????????env.put(Context.PROVIDER_URL, ldap://21:389/);????????????? env.put(Context.SECURITY_AUTHENTICATION, simple);??????? env.put(Context.SECURITY_PRINCIPAL, cn= + account + , + root);??????? env.put(Context.SECURITY_CREDENTIALS, password);??????? try {??????????? ctx = new InitialDirContext(env);//初始化上下文??????????? System.out.println(认证成功);//这里可以改成异常抛出。??????? } catch (javax.naming.AuthenticationException e) {??????????? System.out.println(认证失败);??????? } catch (Exception e) {??????????? System.out.println(认证出错: + e);??????? }??? }??? public void add()

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档