收藏 分享(赏)

Windows下OpenLDAP的安装与配置.doc

上传人:HR专家 文档编号:6211775 上传时间:2019-04-02 格式:DOC 页数:4 大小:39KB
下载 相关 举报
Windows下OpenLDAP的安装与配置.doc_第1页
第1页 / 共4页
Windows下OpenLDAP的安装与配置.doc_第2页
第2页 / 共4页
Windows下OpenLDAP的安装与配置.doc_第3页
第3页 / 共4页
Windows下OpenLDAP的安装与配置.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、Windows 下 OpenLDAP 的安装与配置本文主要参考官方文档:http:/www.openldap.org/doc/admin24/quickstart.html和网上流传的教程:http:/ 下载地址:http:/download.bergmans.us/openldap/openldap-2.2.29/openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exe 下载后点击安装即可。配置 sldap.conf :在安装目录下找到 sldap.conf ,修改配置如下:suffix “dc=example,dc=com“ root

2、dn “cn=Manager,dc=example,dc=com“ rootpw secret 启动 OpenLDAP:进入 cmd 命令行,跳转到 OpenLDAP 安装目录下,运行:slapd -d 1 用可以看到控制台下打印一片信息,openldap 默认是用的 Berkeley DB 数据库存储目录数据的。再开一个 cmd,跳转到 OpenLDAP 安装目录下。测试 OpenLDAP 是否正常启动:ldapsearch -x -s base (objectclass=*) namingContexts 官方文档里,这一条命令加了些单引号,但带单引号的命令在 Windows 环境下跑不通

3、。后面的命令也都避免使用引号。如果返回:dn: namingContexts: dc=example,dc=com 则说明 OpenLDAP 成功启动增加一个条目:1.做一个 LDIF 文件2.使用 ldapadd 命令1.在安装目录下,新建文件 example.ldif,输入如下内容:dn: dc=example,dc=com objectclass: dcObject objectclass: organization o: Example Company dc: example dn: cn=Manager,dc=example,dc=com objectclass: organizat

4、ionalRole cn: Manager 注意:在文档每一行的开头和结尾不要有空格,文档最后最好也别回车。建议不要拷贝,用手敲这几行。2.cmd 在安装目录下,运行: ldapadd -x -D cn=Manager,dc=example,dc=com -W -f example.ldif可能会要求输入密码:secret (配置文件里写的这个密码)添加条目成功后,会有提示: adding new entry cn=Manager,dc=example,dc=com简单查询:ldapsearch -x -b dc=example,dc=com (objectclass=*)查询成功后,会返回刚

5、才插入的条目。JNDI 连接 OpenLDAPJava 的 JNDI 接口很强大,可以连接 LDAP 服务。import java.util.Hashtable;import javax.naming.Context;import javax.naming.NamingException;import javax.naming.directory.DirContext;import javax.naming.directory.InitialDirContext; public class TestOpenLDAP /* param args*/public static void main(

6、String args) / TODO Auto-generated method stubTestOpenLDAP LDAPTest1 = new TestOpenLDAP();String root = “dc=example,dc=com“; /rootHashtable env = new Hashtable();env.put(Context.INITIAL_CONTEXT_FACTORY, “com.sun.jndi.ldap.LdapCtxFactory“ );env.put(Context.PROVIDER_URL, “ldap:/localhost/“ + root);env

7、.put(Context.SECURITY_AUTHENTICATION, “simple“ );env.put(Context.SECURITY_PRINCIPAL, “cn=Manager,dc=example,dc=com“ );env.put(Context.SECURITY_CREDENTIALS, “secret“ );DirContext ctx = null ;try ctx = new InitialDirContext(env);System.out.println( “认证成功“ );catch (javax.naming.AuthenticationException

8、e) e.printStackTrace();System.out.println( “认证失败“ );catch (Exception e) System.out.println( “认证出错:“ );e.printStackTrace();if (ctx != null ) try ctx.close();catch (NamingException e) /ignore问题:1. 图形化界面 LDAPBrowser 的配置下载地址: http:/ LdapBrowser282 目录,打开配置文件 OpenLdap_Localhost.cfg修改配置:basedn=dc=example,d

9、c=commanagerdn=cn=Manager,dc=example,dc=com 运行 lbe.bat 进入图形界面后选择连接OpenLdap_Localhost 即可。2. OpenLDAP 的语法,内置 ObjectClassLDAP 学习entry(record,directory object) 条目 一条数据 相当于数据表的一条记录entry 由若干个 attribute 组成,objectclass 是必须的 attribute,用于描述 entry 的 schemaattribute 是 name/value 对形式,例如 cn = liuxuanyu cn = mengk

10、e 一个 name 可以对应多个值container 是一种特殊的 entry,为数据的组织和管理提供一个继承体系结构,例如 ou任何 entry 都可以在特定的情况下变成 container与关系数据库的比较:LDAP 读操作性能高,写操作性能不如 DB,DB 读写均可,读操作性能不如 LDAP数据结构不同LDAP 适合于存储继承结构的数据namespaceDN (distinguish name) DN 是 entry 的名字,entry 的唯一标识RDN (relative distinguish name) entry 在某个容器范围内的标识CN (common name) 常用名称

11、习惯上被用作 RDNDC (domain component) 域名LDAP 只允许树形结构object identifier (OID) 例如:2.5.4.3 它是属性类型的标识符schemaobject class 定义了 entry 的类型有三种类型的 object Class: 抽象类、辅助类和结构化类。构造 schema 的方式 :1. 组合现有的 object class2. 扩展现有的 object class 继承 使用辅助类(实际上是一种聚合关系)The subschema publishes the schema to clientsinetOrgPerson is a c

12、ontemporary definition for a person entry RFC 27983. JLDAP 与 JNDI 的比较JLDAP 是由 novel 开发的,原是针对 Novel 的 NDS 目录设计的 JAVA 访问工具。NOVEL 的NDS 和网景(NETSCAPE )的目录是工具界最早的目录产品。JLDAP 并非 JNDI 的服务供应者,而是同一抽象层次下的访问工具集。与 JNDI-LDAP 相比,JLDAP 更接近于类关系数据库的访问方式。 NDS 是遵守 LDAP 协议的并进行了扩展的类 MAD 产品。而 NOVEL 也已把 JLDAP 捐献给了 OPENLDAP 开源项目,可以世界范围内自由使用。与 JNDI 相比,JLDAP 无须继承DirContext 才能实现添加,也无需预先生成添加的类,可以象普通数据访问那样,生成连接,然后使用:add 方法添加。这样,添加的灵活性要强于 JNDI。但由于 JLDAP 目前是访问 NDS,因此,它不具备 JNDI 完全面向对象存储的能力,对于高级的 LDAP 应用,JLDAP 不是合适的选择。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > windows相关

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报