Windows 7 下搭建LDAP服务器并使用JNDI访问手记

No Comments

五一闲来没事,加上项目正在进行UAT。抽空研究了一下LDAP相关知识。随手做一个记录。

为了方便阅读还是先介绍一下什么是LDAP?

前言、Lightweight Directory Access Protocol:

The Lightweight Directory Access Protocol , or LDAP ,is an application protocol for querying and modifying directory services running over TCP/IP .(via wikipedia )。LDAP全称是一个轻量级的目录访问协议,它是建立在TCP/IP基础之上的用来查询和修改目录服务的。这是照着wiki翻译的,但是有人要问了什么是directory Service(目录服务)?

按照wiki的说法的话讲:在软件行业,目录就如同一个字典,他使得通过某一名称去查找绑定在该名称上的值得方式成为一种可能。有点类似Java中Map的概念。a directory service is simply the software system that stores, organizes and provides access to information in a directory. 一个目录服务就是一个简单的软件系统,在这个目录上提供了存取和组织信息的功能。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。

OK,进入正题。Google搜索 windows ldap服务器 ,终于找到了一个比较好的流行的:OpenLDAP(点击下载)

一、OpenLDAP安装和配置

安装还是比较简单的,一直next就好。

image

这里记得把上面2个都选上,将LDAP注册为系统的一个服务,默认安装位置:C:\Program Files\OpenLDAP,

进入安装目录,编辑slapd.conf 文件:

找到

ucdata-path ./ucdata
include ./schema/core.schema

在下面加入:(注意你的系统路径,可能随安装位置不同而稍有差异

include ./schema/core.schema
include ./schema/corba.schema
include ./schema/dyngroup.schema
include ./schema/java.schema
include ./schema/misc.schema
include ./schema/cosine.schema
include ./schema/nis.schema
include ./schema/inetorgperson.schema
include ./schema/openldap.schema

这个搞定以后,在同一文件后面的(大概65-66行,修改)

suffix “o=anotherbug,c=com”
rootdn “cn=manager,o=anotherbug,c=com”

还有第70行的位置 : rootpw secret,这里要修改为加密后的密码。

具体操作:

打开命令行,定位到安装目录下,输入:slappasswd -h {MD5} –s “替换为你想要设置的密码,无引号”

image

将生成的MD5密文:{MD5}Xr4ilOzQ4PCOq3aQ0qbuaQ==填入原来secret位置。

OK至此配置已经搞定,可以测试一下服务了。打开命令行转到安装目录下输入:sldapd -d 1

image

至此LDAP服务器已经搭建并可以跑起来了.下面要来测试怎么倒入.ldif格式的数据了。

More