LDAP 部署

openldap 比起其他商业目录服务器(比如 IBM Directory Server),特别的轻巧,十分适合于本地开发测试用,在产品环境中的表现也很优秀。

openldap 软件在它的官方网站 http://www.openldap.org, 不过下载过来是源代码,并没有包含 win32 下的 Makefile 文件,只提供了在 Unix/Linux 下编译用的 Makefile。所以相应的在网上介绍在 windows 下安装使用 openldap 的资料比较少,而在 Unix/Linux 下应用文档却很丰富。

本文实践了在 Windows 下安装配 openldap,并添加一个条目,LdapBrowser 浏览,及 Java 程序连接 openldap 的全过程。

1. 下载安装 openldap for windows,当前版本2.2.29
    下载地址:http://www.userbooster.de/en/download/openldap-for-windows.aspx
   安装很简单,一路 next 即可,假设我们安装在 c:\openldap

2. 配置 openldap,编辑 sldap.conf 文件
   1) 打开 c:\openldap\sldap.conf,找到
    include  C:/openldap/etc/schema/core.schema,在它后面添加
    include  C:/openldap/etc/schema/cosine.schema
    include  C:/openldap/etc/schema/inetorgperson.schema

    接下来的例子只需要用到以上三个 schema,当然,如果你觉得需要的话,你可以把其他的 schema 全部添加进来
    include  C:/openldap/etc/schema/corba.schema
    include  C:/openldap/etc/schema/dyngroup.schema
    include  C:/openldap/etc/schema/java.schema
    include  C:/openldap/etc/schema/misc.schema
    include  C:/openldap/etc/schema/nis.schema
    include  C:/openldap/etc/schema/openldap.schema
2) 还是在 sldap.conf 文件中,找到
    suffix  "dc=my-domain,dc=com"
    rootdn  "cn=Manager,dc=my-domain,dc=com"
    把这两行改为
    suffix "dc=ibm,dc=com"
    rootdn "cn=manager,dc=ibm,dc=com"

    suffix 就是看自己如何定义了,后面步骤的 ldif 文件就必须与它定义了。还要注意到这个配置文件中有一个 rootpw  secret,这个 secret 是 cn=Manager 的密码,以后会用到,不过这里是明文密码,你可以用命令: slappasswd -h {MD5} -s secret 算出加密的密码 {MD5}Xr4ilOzQ4PCOq3aQ0qbuaQ== 取代配置中的 secret。
3. 启动 openldap
    CMD 进入到 c:\openldap 下,运行命令 slapd -d  1
    用可以看到控制台下打印一片信息,openldap 默认是用的 Berkeley DB 数据库存储目录数据的。
4. 建立条目,编辑导入 ldif 文件
   1) 新建一个 ldif(LDAP Data Interchanged Format) 文件(纯文本格式),例如 test.ldif,文件内容如下:
dn: dc=ibm,dc=com
dc: ibm
objectClass: dcObject
objectClass: organization
o: IBM, Inc.

dn: ou=Groups,dc=ibm,dc=com
ou: Groups
description: group description
objectclass: organizationalunit

dn: ou=People,dc=ibm,dc=com
ou: People
description: All people
objectclass: organizationalunit

dn: ou=Permissions,dc=ibm,dc=com
ou: Permissions
description: All Permissions
objectclass: organizationalunit


dn: dc=ibm,dc=com
dc: ibm
objectClass: dcObject
objectClass: organization
o: IBM, Inc.

dn: ou=dev,dc=ibm,dc=com
ou: dev
description: All people in dev team
objectclass: organizationalunit


dn: ou=qa,dc=ibm,dc=com
ou: qa
description: All people in qa team
objectclass: organizationalunit

dn: cn=Robert_Smith, ou=dev,dc=ibm,dc=com
objectClass: inetOrgPerson
cn: Robert_Smith
sn: smith
uid: rsmith
userpassword: smith
mail: [email protected]
description: Robert Smith information
ou: dev

dn: cn=Jason, ou=qa,dc=ibm,dc=com
objectClass: inetOrgPerson
cn: Jason
sn: Jason
uid: rjason
userpassword: jason
mail: [email protected]
description: Jason personal information
ou: qa

  2) 执行命令:ldapadd -x -D "cn=manager,dc=ibm,dc=com" -w secret -f test.ldif
    导入以上内容进入LDAP数据库。
5. 删除导入的数据
   清空OpenLDAP\data目录下面的所有内容。
6. 浏览LDAP信息
   可以下载JXplorer浏览。
   JXplorer下载地址(Windows):
   http://prdownloads.sourceforge.net/jxplorer/JXv3.2_install_windows.exe?download

你可能感兴趣的:(LDAP)