当前位置:文档之家› ldap简介

ldap简介

ldap简介
ldap简介

近几年,随着LDAP(Light Directory Access Protocol,轻量级目录访问协议)技术的兴起和应用领域的不断扩展,目录服务技术成为许多新型技术实现信息存储、管理和查询的首选方案,特别是在网络资源查找、用户访问控制与认证信息的查询、新型网络服务、网络安全、商务网的通用数据库服务和安全服务等方面,都需要应用目录服务技术来实现一个通用、完善、应用简单和可以扩展的系统。

对于任何一家大IT网络的企业来说,IT系统中的目录服务功能是必不可少的。如果一个在全国有多个分支机构的企业,已经有了一个内部网络系统,每一个分支机构都有一个局域网,局域网之间通过专线或者VPN通道连接在一起,那么,怎么样把网络中的资源和信息有效地管理起来呢?通常,这个企业可以在每一个分支机构或者每个城市建立一个目录服务器,任何地方的员工连接到本地目录服务器就可以访问到目录树中所有的信息,在目录服务器之间复制目录信息,以保持同步。比如,人事部门看到的人员目录与财务部门、设备管理部门看到的人员目录是完全一致的,他们所使用的应用系统无须再建立另一套目录结构。当然,这一切都是要经过身份验证的。

目录服务有着如此重要的作用,但在过去,企业通常采用基于Windows的目录服务器,Linux在这方面相形逊色。作为Windows的核心内容,目录服务被企业IT人员认为是Windows 与Linux相比最具竞争力的部分,也成为Linux产品架构中的软肋。随着Red Hat Enterprise Linux 4.0出现,这个情况已经改变了。RHEL 4 内附的LDAP 服务器为OpenLDAP 2.2.13-2 版,OpenLDAP 2.x包括数个重要功能:

1. 支持LDAPv3 - OpenLDAP

2.0 除了其它改善外还支持SASL(SimpleAuthentication and Security Layer)、TLS(Transport Layer Security)以及SSL(Secure Sockets Layer)。LDAPv2 之后通讯协议很多的改变都是为了加强LDAP 的安全性。

2. 支持IPv6 - OpenLDAP 支持新一代的因特网通讯协议第6 版。

3. LDAP Over IPC - OpenLDAP 能够使用IPC 在系统内进行通讯。这可以避免使用网络通讯以增加安全性。

4. 使用新的应用程序界面:改善程序设计人员联机及使用程序的方法。

本文把以Red Hat Enterprise Linux 4.0 为例,介绍在Linux平台使用OpenLDAP上建立目录服务器。

一、LDAP协议简介

LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。目录服务是一种特殊的数据库系统,其专门针对读取,浏览和搜

索操作进行了特定的优化。目录一般用来包含描述性的,基于属性的信息并支持精细复杂的过滤能力。目录一般不支持通用数据库针对大量更新操作操作需要的复杂的事务管理或回卷策略。而目录服务的更新则一般都非常简单。这种目录可以存储包括个人信息、web链结、jpeg图像等各种信息。为了访问存储在目录中的信息,就需要使用运行在TCP/IP之上的访问协议—LDAP。 LDAP目录中的信息是是按照树型结构组织,具体信息存储在条目(entry)

的数据结构中。条目相当于关系数据库中表的记录;条目是具有区别名DN(Distinguished Name)的属性(Attribute),DN是用来引用条目的,DN相当于关系数据库表中的关键字(Primary Key)。属性由类型(Type)和一个或多个值(Values)组成,相当于关系数据库中的字段(Field)由字段名和数据类型组成,只是为了方便检索的需要,LDAP中的Type 可以有多个Value,而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不

相关的。LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观。LDAP

系统结构图见图1.

图1 LDAP系统结构图

LDAP的信息是以树型结构存储的,在树根一般定义国家(c=CN)或域名(dc=com),在其

下则往往定义一个或多个组织(organization)(o=Acme)或组织单元(organizational units) (ou=People)。一个组织单元可能包含诸如所有雇员、大楼内的所有打印机等信息。

此外,LDAP支持对条目能够和必须支持哪些属性进行控制,这是有一个特殊的称为对象类别(objectClass)的属性来实现的。该属性的值决定了该条目必须遵循的一些规则,其规定了该条目能够及至少应该包含哪些属性。例如:inetorgPerson对象类需要支持

sn(surname)和cn(common name)属性,但也可以包含可选的如邮件,电话号码等属性。dn :一条记录的位置;dc :一条记录所属区域;ou :一条记录所属组织;cn/uid:一条记录的名字/ID。OpenLdap是一个正在得到日益普遍应用的开源软件,和LADP完全兼容。

二、安装OpenLDAP服务器

如果在系统安装时已经把安装上了,那么我们就可以直接对OpenLDAP进行配置使用了。否则,可以通过Rat Het Enterprise Linux图形界面下的“添加/删除应用程序”工具进行安装。具体方法是,选择“主选单”→“系统设置”→“添加/删除应用程序”,在弹出的界面中选中“网络服务器”的“OpenLDAP-server”,单击“更新”即可,见图2。

图2 安装OpenLDAP 服务器软件

如果你使用的是其他版本的Linux,那么通常要安装以下软件包:OpenLDAP、OpenLDAP-servers、OpenLDAP-clients、OpenLDAP-devel ,OpenLDAP-2.0是必要套件,一定要先安装;OpenLDAP-servers是服务器套件;OpenLDAP-clients是操作程序套件;OpenLDAP-devel是开发工具套件。

三、配置OpenLDAP 服务器

以RedHat Linux 4所为例字介绍OpenLDAP 服务器配置文件。主要文件见表1。

表1

1. 建立Linux用户账号

使用文本编辑建立一个文本文件,文件名称myusers.list 内容如下:

user1 123456

user2 123456

user3 123456

user4 123456

user5 123456

user6 123456

user7 123456

user8 123456

user9 123456

注意:第一个字段为使用者名称;第二个字段为预设密码,中间必须用空格隔开。然后使用文本编辑建立另外一个文本文件,文件名称add-users.sh内容如下:

#!/bin/bash

$1}' users.list `for i in `awk '{print

do

useradd $i

grep "\<$i\>$2}' | passwd --stdin" users.list | awk '{print $i

done

建立Linux用户账号:

#chmod 775 add-users.sh

#./add-users.sh

2.修改缺省配置文件:/etc/OpenLDAP/slapd.conf,请把蓝色部分按照您的具体情况填写。

database bdb

suffix "dc=myexample,dc=com" #一条记录所属区域#

rootdn "cn=Manager,dc=example,dc=com"

rootpw 1234567 #定义LDAP根管理员的密码

3.把原有Linux 账号转为LDIF 文件

原有Linux 服务器上有user1-user9 这些使用者账号,密码均为123456;下面便是转换的步骤:

# cd /usr/share/OpenLDAP/migration #转换文件的目录#

# vi migrate_common.ph

$DEFAULT_MAIL_DOMAIN = "https://www.doczj.com/doc/d217316017.html,";

Default base

$DEFAULT_BASE = "dc=myexample,dc=com";

# ./migrate_passwd.pl /etc/passwd > /worktmp/user.ldif

# ./migrate_group.pl /etc/group > /worktmp/group.ldif

4. 建立example.ldif,ou_people.ldif, ou_group.ldif三个文件

#cat example.ldif

dn: dc=example,dc=com

dc: example

objectClass: dcObject

objectClass: organizationalUnit

ou: https://www.doczj.com/doc/d217316017.html,

#cat ou_people.ldif

dn: ou=people, dc=example, dc=com

objectclass: organizationalunit

ou: people

#cat ou_group.ldif

dn: ou=group, dc=example, dc=com

objectclass: organizationalunit

ou: group

5. 转换原有Linux 账号至OpenLDAP服务器上:

#slapadd -vl example.ldif

added: "dc=example,dc=com" (00000001)

#slapadd -vl ou_people.ldif

added: "ou=people,dc=example,dc=com" (00000002)

#slapadd -vl ou_group.ldif

added: "ou=group,dc=example,dc=com" (00000043)

#slapadd -vl user.ldif

#slapadd -vl group.ldif

四、启动OpenLDAP服务器

#chown ldap.ldap /var/lib/ldap/* #把/var/lib/ldap/目录内的档案变更拥有者及群组为ldap。

然后可以通过Rat Het Enterprise Linux图形界面下的选择“主选单”→“系统设置”→“服务器设置”→“服务”,在弹出的界面中选中ldap”,单击“重新启动”即可,见图3。

图3 服务器启动界面

利用ldapsearch 指令可搜寻LDAP 服务器的数据,若是可看到以下的数据,代表整个设定正确无误。

# ldapsearch -x -b "dc=example,dc=com"

………

# user9, Group, https://www.doczj.com/doc/d217316017.html,

dn: cn=user9,ou=Group,dc=myexample,dc=com

objectClass: posixGroup

objectClass: top

cn: user9

userPassword:: e2NyeXB0fXg=

gidNumber: 508

………

五、配置Linux OpenLDAP客户端

在客户端执行authconfig-gtk命令,进入认证配置界面,进入图4所示的界面中配置LDAP服务器的信息。在LDAP 服务器处指定 LDAP 服务器的 IP 地址。

图4 添加OpenLDAP服务器IP地址

打开 /etc/ldap.conf 文件,下面是一些用于配置的关键指令。

到此为止我们已经配置完成Liunx OpenLDAP目录服务器、客户端,接下来把介绍一下管理技巧

我们已经配置完成Liunx OpenLDAP目录服务器、客户端,下面着重介绍一下目录服务器的管理技巧。

一、监控OpenLDAP服务器

1.使用uptime命令

使用uptime命令可以查看系统负载,系统平均负载被定义为在特定时间间隔内运行队列中的平均进程数目。如果一个进程满足以下条件则其就会位于运行队列中:没有在等待

I/O操作的结果、它没有主动进入等待状态(也就是没有被调用、没有被停止。

# uptime

9:51pm up 3 days, 4:43, 4 users, load average:6.02, 5.90, 3.94

上面命令显示示最近1 分钟内系统的平均负载是6.02,在最近5分钟内系统的平均负载是5.90,在最近的15 分钟内系统的平均负载是3.94。一共四个用户。通常来说只要每个CPU的当前活动进程数不大于3那么系统的性能就是良好的,如果每个CPU的任务数大于5,那幺就表示这台机器的性能有严重问题。对于上面的例子来说,由于笔者系统使用是双CPU,那幺其每个CPU的当前任务数为:6.02/2=3.01。这表示该服务器的性能是可以接受的。

2.使用cron命令进行定时监测系统负载:

cron是一个守护进程,它提供定时器的功能,让用户在特定时间执行命令,首先使用命令:“chkconfig -list|grep crond”查看该服务是否启动,然后使用命令:

# crontab -e

此时打开一个vi编辑器:输入以下内容:

#30 * * * * * uptime

存盘退出,这样每隔十五分钟就记载其平均负载,这样累计一天,我们就可以得到最近一天的平均负载。

3. OpenLDAP进程的监控

Linux系统提供了ps、top等察看进程信息的系统调用,通过结合使用这些系统调用,我们可以清晰地了解进程的运行状态以及存活情况,从而采取相应的措施,来确保Linux

系统的性能。它们是目前在Linux下最常见的进程状况查看工具,是随 Linux版本发行的,安装好系统之后,用户就可以使用。这里以ps命令为例,ps命令是最基本同时也是非常强大的进程查看命令。利用它可以确定有哪些进程正在运行及运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等。ps命令可以监控后台进程的工作情况,因

为后台进程是不和屏幕键盘这些标准输入/输出设备进行通信的,图5是ps -ef|grep ldap 命令输出的例子。说明其中PID为3653是主进程。

图5 OpenLDAP服务器的进程

4.端口的监控

轻型目录访问协议默认使用389端口。可以使用命令:

# netstat -an | grep 389

tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN

二、 OpenLDAP服务器自动启动和安全设定

1.自动启动OpenLDAP服务器

如果希望ldap每次启动都能自动运行,可以用ntsysv设置。以root权限运行命令:

# ntsysv

这里访问控制用于禁止匿名查询,而认证用户可以修改自己的所有属性,除了userPassword属性,允许查询它人的信息条目。上面的每一行都是必须的,如果没有“by anonymous auth”,需要认证的用户不能完成认证,因为它查询不到密码。所以“auth”在这里的作用就是允许匿名用户可以读到密码,但只能用于验证,而不能用于其它的用途,这就保证了密码属性的安全。

另外前面介绍/etc/OpenLDAP/slapd.conf文件设定密码时,使用了明文,主要是为了调试方便,实际工作时应当使用加密方法。最新版本的OpenLDAP支持三种加密方法:MD5、CRYPT、SSHA。我们不想把rootpw 存储在服务器上的明文内,所以我们改用散列。有几种

普遍使用的散列方法可通过slappasswd 命令来实现,包括SHA、SSHA、MD5、和CRYPT在内。安全方面CRYPT最差。SSHA是默认方法,MD5也不错。使用slappasswd 可以生成一个很好的散列rootpw:

$ slappasswd

New password:

Re-enter new password:

{SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R

现在复制粘贴这个很好的新散列到/etc/ldap/slapd.conf内:

rootpw {SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R

这是一个永久设置,很适合用在小型的简单的网络上。更好的解决方案就是创建一个LDAP记录,该记录定义了LDAP管理员,还为LDAP管理员使用slapd.conf中的ACLs (access control lists)定义了访问权限。尽量少把安全敏感的信息存储在目录中.如果非存不可.一定要编辑ACL严格的控制访问权限如userPassword等.多数情况下目录服务还要主要是给其他的服务提供数据存储.这样的话应该让每个服务器绑定到不通的DN,同时在ACL中赋予他们较高的权限.而不能让所有的服务都使用rootdn来绑定。

三、管理OpenLDAP服务器

1. 命令行下的管理

Linux系统管理员更加喜欢使用命令,一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢,但是熟悉后,您未来的学习之路把是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。即使是通过一条缓慢的调制解调器线路,它也能操纵几千公里以外地远程系统。OpenLDAP提供了在Linux命令行下的访问工具集。包括ldapsearch,ldapadd,ldapmodify,ldappassword,ldapdelete等必要的工具。

图6启动OpenLDAP提供网络服务

打开如图6 所示的窗口,在ldap服务选项加上*(用空格键),然后重新启动系统,这样系统会启动ldap目录服务。

2.使用访问控制(Access Control)实现用户认证

修改OpenLDAP的配置文件,增加控制模块方法如下:

# vi /usr/local/etc/OpenLDAP/slapd.conf

access to attr=userPassword

by anonymous auth

by self write

by * none

access to *

by self write

by users read

2.使用phpldapadmin管理OpenLDAP服务器

phpldapAdmin 是免费的工具,可以管理OpenLDAP服务器,使用它透过浏览器就可管理OpenLDAP服务器。phpldapAdmin是一个开源工具,官方主页:

https://www.doczj.com/doc/d217316017.html,/ ,最新版本:0.9.7.2 ,下载安装步骤:

#cd /var/www/html/

# wegt https://www.doczj.com/doc/d217316017.html,/ ... dmin-0.9.7.2.tar.gz

#gunzip phpldapadmin-0.9.7.2.tar.gz

#tar vxf phpldapadmin-0.9.7.2.tar

#cd phpldapadmin-0.9.7.2/config

#cp config.php.example config.php

修改phpMyadmin配置文件:

# vi config.php

$i]['host'] =$servers[ 'ldap.localhost';

$i]['base'] = 'dc=example,dc=com'; $servers[

$i]['login_pass'] = 'secret1234567 ';$servers[ #前面定义的服务器根管理员的密码

然后在Linux 浏览器服务器的URL栏目输入:http://主机/phpldapadmin ,即可。界面见图7。当然也可以使用IP地址。

图7 phpMyadmin管理OpenLDAP界面

除了phpMyadmin还有两个管理工具:ldapbrowser,官方网址:

https://www.doczj.com/doc/d217316017.html,/~gawor/ldap/ ,最新版本:282b2,ldapbrowser是纯JAVA 的程序,可跨平台运行,在开源的程序中,是最优秀的一个。缺点是不能浏览服务器端的schema对象,从而限制了条目编辑(添加)的能力。其次,由于JAVA对LDAP的访问方式在添加时,必须预先生成一个实现DirContext接口的类,因此,这也令订制型的添加操作在JAVA实现时相当困难。ldapadministrator官方网址:

https://www.doczj.com/doc/d217316017.html,/ ,最新版本:3.3,ldapadministrator是一个windows的收费程序,试用一个月。Ldapadministrator除了具备ldapbrowser的功能外,在条目编辑上的功能大为增强。

四、Outlook下如下使用OpenLDAP

因为微软的Outlook 软件一直占有很大的使用率,所以也的介绍一下Outlook 怎么样使用OpenLDAP。我们可以使用Outlook 来观看远程LDAP 目录服务器的各项信息。例如我们要搜寻某个员工的资料时,我们只要打开我们的Outlook 就可以查询该员工的数据了。开启 Outlook 之后,选择工具 / 账户,然后再选取“新增 / 目录服务”。填入你的服务器的IP地址或者主机全称域名,在下一个屏幕中选yes以允许用目录服务来查询地址,最

后在"目录服务"栏中选中刚才设置的项目击“属性/高级",在"搜索库"中填入

“ou=mycompany,dc=lpenguin,dc=idv,dc=cn”,即可。见图8。

图8 Outlook设置界面

五、OpenLDAP在Linux上集群的应用

OpenLDAP在该系统的网络应用体系中用于对所有应用提供统一的身份认证服务,还包括如邮件路由、地址、联系人信息等其它信息的查询。LDAP作为一种特殊的数据库,通过对读取、查询操作进行特别的优化和处理,以保证在查询速度方面的优势,所以特别适合用来统一企业的各种认证服务,从而规范各种业务系统的同一登录身份和口令。当然,它的缺点和优点一样明显,比如不善于update、insert等操作,但是如果把它作为中央认证数据库,则正好可以利用它的长处而回避它的弱点。

由于系统采用了LDAP作为所有应用的中央认证数据库,一旦该LDAP服务器失效,则系统网络环境中所有依赖于该数据库的应用都会受到影响,甚至停止提供相应的服务。为了避免这种情况的发生,就要通过两台LDAP服务器建立一个高可靠性的认证数据库集群,同时对其它应用系统提供统一的数据库访问网络接口。

总结:

以上是Linux下使用OpenLDAP建立目录服务器,其实在红帽软件公司推出目录服务器之前,Linux的平台理论上是可以实现目录服务功能的,但是,Linux的目录服务功能很多都是由免费开源软件包帮助实现,并没有专门的公司来负责开发和维护支持,因此,很多企业用户都对其心存担忧。在企业的信息系统中,最重要的就是要系统各方面实现无缝集成。很多企业通常用的都是Windows操作平台、Oracle数据库,以及Windows目录服务器。即使他们采用的是Linux平台,由于Linux之前没有专业的公司提供专门的目录服务器产品,因此这些企业在目录服务器上还是会选择Windows。这样一来,考虑到Linux平台与Windows 目录服务器无缝连接的问题,企业在选择平台时也会很慎重。因此,Linux现在推出自己的目录服务器,可以完善其产品结构,系统各方面可实现无缝集成,把整个产业链向前推动。

主流的LDAP服务器还有Sun Java System Directory Server和IBM Directory Server、Domino,使用它们同样可行,配置也是大同小异。其中Domino、Sun Java System Directory Server还可以在其他平台运行。

LDAP配置

LDAP 中的访问控制列表 本节介绍Senior Level Linux Professional (LPIC-3) 301 考试的303.2 主题的内容。此主题的权值是2。 在本节中,学习如何: ?计划LDAP 访问控制列表 ?了解访问控制语法 ?授予和撤消LDAP 访问权限 LDAP 树中可以存储各种数据,包括电话号码、出生日期和工资表信息。其中一些数据可能是公开的,一些数据可能只能由由特定的人访问。根据用户的不同,同样的信息可能有不同的限制。例如,也许只有记录的所有者和管理员可以更改电话号码,但是每个人都可以读取这些号码。访问控制列表(ACL) 处理这些限制的配置。 计划LDAP 访问控制列表 在开始编写配置之前,应该确定要实现的目标。树的哪部分包含敏感信息?哪些属性需要保护,保护其不被谁访问?如何使用树? ACL 的组件 ACL 条目提供三条信息: 1.ACL 指定what条目和属性 2.ACL 应用于who 3.授予的access级别

指定 “what” 子句时,可以选择根据对象的区分名(distinguished name ,DN )、LDAP 风格的查询筛选器、属性列表或以上三者的 组合来进行筛选。最简单的子句允许一切内容,但也可以有很多限制。 根据 DN 筛选允许您指定精确匹配,比如 ou=People,dc=ertw,dc=com 或正则表达式 (参阅 “正则表达式”) 查询筛选器可以匹配特定的 objectClass 或其他属性。属性列表中的属性名称用逗号分隔。更复杂的匹配条件可以是 “身份是管理员的 ou=People,dc=ertw,dc=com 下的所有密码条目”。 可以灵活地确定将 ACL 应用于 who 。用户一般由绑定到树上的 DN 来识别,这称为 bindDN 。每个 LDAP 条目可以具有一个 userPassword 属性,用于对特定的用户进行身份验证。在一些上下文中,您可以将当前登录的用户称为自己, 这有利于允许用户编辑自己的详细信息。 如果用户没有绑定,则被视为匿名用户。默认情况下,匿名用户可以 读取树,所以您必须决定是否需要更改此行为。可以通过 IP 地址或 用于连接的方法(比如明文和加密的方法)来对匿名用户(或任何用户)进行分割。 一旦确定了 what 和 who ,必须确定访问级别。访问权限可以是无 一直到写 访问。还可以指定用户可以验证条目,但不可以读取;或可以允许用户读取、搜索和比较访问。 无论如何配置您的 ACL ,任何已配置的 rootDN 用户可以完全控制其数据库。不可以对此进行更改,除非将 rootDN 配置从 slapd.conf 中移除。 了解访问控制语法 ACL 的基本格式使用 Backus-Naur Form 表示,也就是: access to [ by [ ] [ ] ]+ 描述 what what 描述 ACL 强制的属性和条目。实现此目标的 BNF 表示法如清单 1 所示。 清单 1. ACL 的 what 部分的 BNF 描述

LDAP认证方式

LDAP认证方式,https加密传输 他们用的是WSS3.0 + LDAP认证方式,https加密传输,主要用于做文档管理,没有任何自己开发的代码在其中。 首先是关于崩溃问题(笔记记载如下): 前两天出了一点小故障,问题描述要比解决方案复杂得多。。 开始可以出现登录页面,但是登录上去就抱错,说找不到default页面,然后看到winows update里面有个sharepoint的升级,就运行了。重启了机器后sharepoint的务就挂了。。。 唯一能想到的修复方法就是运行那个sharepoint配置向导,但是第9步会说spadmin服务没有起,十分伤心。就扔下不管了。 今天有人要用了,只好硬着头皮看看,发现这次配置向导竟然通过了。唉,微软的东西就是搞不懂,不过网站还是起不来,就乱改了一通iis配置,然后又用配置向导修复了好几次,终于可以出现登录页面了,但总说我登录不上。研究了半天估计是ldap配置出了问题,果然一检查是把上面2的web.config给覆盖了,于是恢复了就好了。。。 现在想一想当初可能就是升级后把一些配置给我覆盖了吧。。 然后是关于WSS3.0如何使用LDAP认证的问题: 基本按照网上的一些步骤配置,不过有些改动,详细内容可以参考这个网页: https://www.doczj.com/doc/d217316017.html,/helloitsliam/archive/2006/08/15/10027.aspx 这里只说一下具体做法 1. 从一个装了moss2007的机器上copy一个microsoft.office.server.dll文件放在桌面上,在 C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI目录,然后将这个文件拖进c:\WINDOWS\assembly目录,注意一定要拖进。。 2. 修改sharepoint管理中心网站和web网站的web.config文件,默认在 c:\Inetpub\wwwroot\wss\VirtualDirectories\80(和另一个管理端口) 在这行和之间加入: 保存关闭。注意useDNAttribute="false"一句比较重要,搜索的资料很多没有说,否则会连不上。3. 打开sharepoint的管理中心(可以从开始->管理工具->),应用程序管理,验证提供程序,编辑现有的默认验证,验证类型选中表单,这里要打开一下匿名的权限(注意稍后再给禁掉),成员身份提供程序要和前面添加的一致,如LdapDemoMembership,角色管理不用填,最下面启用客户端集成,然后保存。

LDAP协议

目录服务 目录服务就是按照树状模式组织信息,实现信息管理和服务接口的一种方式。目录服务中一般包括两个方面的内容:第一个组成部分是:数据库,这种数据库有别于日常所用到的关系型数据库,它是一种分布型的数据库,并且需要一个描述数据的规则;第二个组成部分是:访问和处理数据库的相关的协议。 目录服务和关系数据库不同,目录服务不支持批量更新事务处理能力,目录一般只执行简单的更新操作,适合于进行大量数据的检索;目录具有广泛的复制信息的能力,从而在缩短响应时间的同时,提高了可用性和可靠性;目前,目录服务技术的国际标准有两个,即较早的X.500标准和近年迅速发展的LDAP标准。 X.500虽然是一个完整协议群组,但是其目录访问协议DAP这种应用层的协议是严格按照复杂的ISO七层协议模型制定的,对相关层协议环境要求过多,主要运行在unix机器上,在许多小系统上,如PC和Macintosh(苹果机)上无法使用,因此没有多少人按照DAP开发应用程序,TCP/IP协议体系的普及,更使得这种协议越来越不适应需要。 LDAP协议 LDAP全称为Light Directory Access Protocol,轻量级目录访问协议,LDAP 协议从1993年批准,有了V1版本,1997年发布了第三个版本LDAP v3,使得LDAP协议不仅仅做为X.500的简化版,同时提供了LDAP协议许多自有功能特性,LDAP V3协议也不是一个单一的协议,而是一个协议群组,包括内容如下: RFC2251-LDAP V3协议核心协议,定义了LDAP V3协议的基本模型和操作;RFC2252-定义了LDAP V3基本数据模式(Schema)以及标准的系统数据模式,Schema包括语法、匹配规则、属性类型和对象类; RFC2253-定义了LDAP V3中的分辨名(Differentiate Name, DN)表达方式;RFC2254-定义了LDAP V3中过滤器的表达方式; RFC2255-定义了LDAP V3中统一资源地址格式; RFC2256-定义了在LDAP V3中使用X.500的Schema列表; RFC2829-定义了LDAP V3的认证方式; RFC2830-定义了LDAP V3如何通过扩展使用TLS服务; RFC1823-定义了C的关于LDAP V3客户端开发接口; RFC2847-定义了LDAP数据导入、导出的文件接口LDIF; 在这些协议中,主要定义了LDAP的内容,同时定义了信息模型,确定了LDAP 目录中所存储的信息的格式和字符集,如何表示目录信息(定义对象类、属性、匹配规则和语法等模式)。 一个命名空间:确定对信息进行的组织方式即就是目录信息树DIT,以DN和RDN 为基础的命名方式,以及LDAP信息的Internet表示方式; 一个功能模型:确定可以在信息上执行的操作的通讯协议以及在客户端尽心这些操作的API接口; 一个安全框架:保证目录中信息的安全,匿名、用户名/密码、SASL等多种认证方式以及与TLS结合的通讯保护框架; 一个操作模型:分布式的操作模型,基于Referral方式的分布式操作框架; 一个LDAP扩展框架:基于控制和扩展操作的LDAP扩展框架。

LDAP使用手册

LDAP使用手册 一、LDAP介绍 LDAP是轻量级目录访问协议的简称(Lightweight Directory Access Protocol).用于访问目录服务。它是目录访问协议的移植,但是简化了实现方法。 二、目录服务与关系数据库之间的区别 a)目录查询操作比关系数据库有更高的效率,但是更新效率比关系数据 库低 b)目录不支持关系数据库那样的复杂查询,比如两个表的连接。 c)目录不支持多操作的事物完整性,没有方式确认一些操作是全部成功 还是全部失败 d)目录能够能好和更灵活的支持子查询和匹配查询 e)目录协议更适合应用于广域网,比如因特网或者大型公司的网络 f)目录的管理,配置,和调试比关系型数据库更简单 g)在使用关系数据库之前,必须首先定义表结构(模式)才可以进行操 作。而目录中所使用的模式是由LDAP定义好的一系列类组成的。对 于目录中的每条记录中必须属于其中的一个类或者多个类。这些类定 义了该记录中可以存储的信息。 h)目录以对象的形式存储数据。信息被组织成树型结构。 i)目录服务支持分布式存储结构,容易实现数据的扩展,能满足大容量 存储的要求。 三、LDAP的优点

1:可以存储在其它条件下很难存储的管理信息 2:数据安全可靠,访问控制粒度细腻。 3:LDAP是一个标准的,开放的协议,具有平台无关性。 4:数据分布广,规模可灵活扩充。 5:LDAP目录服务器可以使任何一种开放源代码或商用的LDAP目录服务器。 四、LDAP模型 LDAP模型是从协议中继承过来的。是LDAP的一个组成部分,用于指导客户如何使用目录服务 LDAP 定义了四个模型,包括信息模型,命名模型,功能模型,安全模型。 信息模型(LDAP information model) LDAP信息模型用于描述LDAP中信息的表达方式。 LDAP信息模型包含三部分Entries Attributes Values Entry:Directry中最基本的信息单元,Entry中所包含的信息描述了现实世界中的一个真实的对象,在目录系统中它可以理解为, 目录树中的一个节点。在目录中添加一个Entry时,该 Entry必须属于一个或多个object class ,每一个object class规定了该Entry中必须要包含的属性,以及允许使 用的属性。Entry所属的类型由属性objectclass规定。 每一个Entry都有一个DN(distinguished name) 用于唯 一的标志Entry在directory中的位置。如下图所示: 根节点DN的命名有多种方法,其中之一就是域名命名法。

LDAP元素规范与应用

LDAP元素规范与应用 信息部 当前版本:v1.0 修改日期:2011-525 作者:王兵旺

目录 一、概述 (3) 二、ldap元素解读 (3) 三、ldap常用元素 (4) 3.1 常用元素 (4) 3.2 目录规范 (5) 四、ldap元素自定义 (6)

一、概述 本文仅描述ldap节点创建的方法及属性的匹配。通过剖析ldap的schema 来讲解如何有效的产生目录节点,最后达到信息化建设与维护的目标。需要了解开源openldap的安装配置与协议请参考《OpenLdap使用手册》。 二、ldap元素解读 openldap通过slapd.conf文件来引入所需的schema定义。整个schema主要描述了二大类元素:objectclass与attributetype。下面请跟我一起来解读两者之间的关联。 对于objectClass来说,初学者不妨把它理解为数据库中的一个table,如此一来,attributetype就是table中的一个coloum(这样比较好理解)。与数据库中的table,coloum不同的是,ldap中的objectClass呈现一种类似与面向对象编程中的继承关系。 objectClass在ldap中的具体表现形式就是诸多的对象类定义。如organization、country、person等等。每个对象类在声明语法中都会以下几个主要部分: 1、SUP 2、MUST 3、MAY SUP表示当前objectClass继承于另外某个objectClass。ldap的objectClass能表示一种继承的上下关系,如SUP top STRUCTURAL表示top是

ldap介绍

LDAP介绍 【摘要】在学习crm维护模块时,发现7层管理结构是存储在mysql的systree表中的,其实也可以使用LDAP来存储管理者的信息。本文介绍了一些LDAP的基本概念,及如何用LDAP来管理维护模块的7层管理者结构,并介绍了LDAP与MYSQL 的区别。 【关键词】LDAP,维护模块 1.LDAP简介 在介绍LDAP之前,先简单介绍一下目录服务。目录服务就是按照树状模式组织信息,实现信息管理和服务接口的一种方式。目录服务中一般包括两个方面的内容:第一个是数据库,这种数据库有别于日常所用到的关系型数据库,它是一种分布型的数据库,并且需要一个描述数据的规则;第二个组成部分是:访问和处理数据库的相关的协议。目录服务和关系数据库不同,目录服务不支持批量更新事务,目录一般只执行简单的更新操作,适合于进行大量数据的检索;目录具有广泛的复制信息的能力,从而在缩短响应时间的同时,提高了可用性和可靠性;目前,目录服务技术的国际标准有两个,即较早的X.500标准和近年迅速发展的LDAP标准。目录数据库常用于管理树状组织结构信息,如行政,人事教育,政府部门,社会保障,公安,军队信息等。 LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。LDAP协议从1993年批准,有了V1版本,1997年发布了第三个版本LDAP v3,LDAP V3协议也不是一个单一的协议,而是一个协议群组,包括内容如下:RFC2251-LDAP V3协议核心协议,定义了LDAP V3协议的基本模型和操作; RFC2252-定义了LDAP V3基本数据模式(Schema)以及标准的系统数据模式,Schema 包括语法、匹配规则、属性类型和对象类; RFC2253-定义了LDAP V3中的分辨名(Differentiate Name, DN)表达方式; RFC2254-定义了LDAP V3中过滤器的表达方式; RFC2255-定义了LDAP V3中统一资源地址格式; RFC2256-定义了在LDAP V3中使用X.500的Schema列表;

OpenLdap使用手册

OpenLdap使用手册 一、文档概述 (2) 二、LDAP简介 (2) 2.1 LDAP介绍 (2) 2.2 LDAP优劣 (3) 2.3 LDAP协议 (3) 2.4 LDAP服务器 (4) 2.5 LDAP使用权限 (4) 2.6 LDAP目标 (4) 三、安装配置 (5) 3.1 软件安装 (5) 3.2 软件配置 (5) 3.3 软件运行 (5) 3.4 初始数据 (6) 四、LDAP应用 (8) 4.1 LDAP常用属性 (8) 4.2LDAP Schema语法 (9) 五、LDAP客户端 (9) 5.1 增加目录属性 (10)

5.2 删除目录属性 (11) 5.3 修改目录属性 (11) 5.4 增加目录 (11) 5.5 修改目录 (12) 5.6 删除目录 (13) 六、应用举例 (14) 附录: (15) X.500 (15) 一、文档概述 本文从介绍ldap入手,讲述了ldap的使用场合,并进一步的指导用户进行openldap安装与配置。是新手入门的一个教程。 二、LDAP简介 2.1 LDAP介绍 LDAP的英文全称是Lightweight Directory Access Protocol,它是基于 X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP 支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。通过把LDAP目录作为系统集成中的一个

LDAP简介

科技部科技基础性工作专项资金重大项目 研究成果 项目名称:我国数字图书馆标准规范建设 子项目名称:数字资源检索与应用标准规范研究 项目编号:2002DEA20018 研究成果类型:研究报告 成果名称:LDAP协议应用指南 成果编号:CDLS-S07-002 成果版本:总项目组推荐稿 成果提交日期:2003年2月 撰写人:张智雄(中国科学院文献情报中心)

项目版权声明 本报告研究工作属于科技部科技基础性工作专项资金重大项目《我国数字图书馆标准规范建设》的一部分,得到科技部科技基础性工作专项资金资助,项目编号为2002DEA20018。按照有关规定,国家和《我国数字图书馆标准规范建设》课题组拥有本报告的版权,依照《中华人民共和国著作权法》享有著作权。 本报告可以复制、转载、或在电子信息系统上做镜像,但在复制、转载或镜像时须注明真实作者和完整出处,并在明显地方标明“科技部科技基础性工作专项资金重大项目《我国数字图书馆标准规范建设》资助”的字样。 报告版权人不承担用户在使用本作品内容时可能造成的任何实际或预计的损失。 作者声明 本报告作者谨保证本作品中出现的文字、图片、声音、剪辑和文后参考文献等内容的真实性和可靠性,愿按照《中华人民共和国著作权法》,承担本作品发布过程中的责任和义务。科技部有关管理机构对于本作品内容所引发的版权、署名权的异议、纠纷不承担任何责任。 《我国数字图书馆标准规范建设》课题组网站(https://www.doczj.com/doc/d217316017.html,)作为本报告的第一发表单位,并可向其他媒体推荐此作品。在不发生重复授权的前提下,报告撰写人保留将经过修改的项目成果向正式学术媒体直接投稿的权利。

LDAP中文学习手册

L D A P使用手册一、LDAP介绍 LDAP是轻量级目录访问协议的简称(LightweightDirectoryAccessProtocol). 用于访问目录服务。它是X.500目录访问协议的移植,但是简化了实现方法。 二、目录服务与关系数据库之间的区别 a)目录查询操作比关系数据库有更高的效率,但是更新效率比关系数据库低 b)目录不支持关系数据库那样的复杂查询,比如两个表的连接。 c)目录不支持多操作的事物完整性,没有方式确认一些操作是全部成功还是全 部失败 d)目录能够能好和更灵活的支持子查询和匹配查询 e)目录协议更适合应用于广域网,比如因特网或者大型公司的网络 f)目录的管理,配置,和调试比关系型数据库更简单 g)在使用关系数据库之前,必须首先定义表结构(模式)才可以进行操作。而目 录中所使用的模式是由LDAP定义好的一系列类组成的。对于目录中的每条记录中必须属于其中的一个类或者多个类。这些类定义了该记录中可以存储的信息。 h)目录以对象的形式存储数据。信息被组织成树型结构。 i)目录服务支持分布式存储结构,容易实现数据的扩展,能满足大容量存储的 要求。 三、LDAP的优点 1:可以存储在其它条件下很难存储的管理信息 2:数据安全可靠,访问控制粒度细腻。

3:LDAP是一个标准的,开放的协议,具有平台无关性。 4:数据分布广,规模可灵活扩充。 5:LDAP目录服务器可以使任何一种开放源代码或商用的LDAP目录服务器。四、LDAP模型 LDAP模型是从X.500协议中继承过来的。是LDAP的一个组成部分,用于指导客户如何使用目录服务 LDAP定义了四个模型,包括信息模型,命名模型,功能模型,安全模型。 1.LDAP信息模型(LDAPinformationmodel) LDAP信息模型用于描述LDAP中信息的表达方式。 LDAP信息模型包含三部分EntriesAttributesValues(条目属性值) Entry:Directry中最基本的信息单元,Entry中所包含的信息描述了现实世界中的一个真实的对象,在目录系统中它可以理解为,目录树中的 一个节点。在目录中添加一个Entry时,该Entry必须属于一个 或多个objectclass,每一个objectclass规定了该Entry中必须 要包含的属性,以及允许使用的属性。Entry所属的类型由属性 objectclass规定。每一个Entry都有一个 DN(distinguishedname)用于唯一的标志Entry在directory中 的位置。如下图所示: 根节点DN的命名有多种方法,其中之一就是域名命名法。例如:我们要以公司 的网址作为公司目录树的根节点。如https://www.doczj.com/doc/d217316017.html,那 么根节点的DN应该为DN:dc=sohu,dc=com 上图中根节点的DN:dc=example,dc=com而该根节点有两个子节 点,ou=people,和ou=servers。

LDAP服务器

第一八章LDAP服务器 学习目标: 了解LDAP服务器的相关知识。学会配置Mirapoint Directory目录服务器。 1LDAP基础 LDAP的英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。现在LDAP技术不仅发展得很快而且也是激动人心的。在企业范围内实现LDAP可以让运行在几乎所有计算机平台上的所有的应用程序从 LDAP目录中获取信息。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。通过把 LDAP 目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至连主要的数据源都可以放在任何地方。 1.1 LDAP的优势 如果需要开发一种提供公共信息查询的系统一般的设计方法可能是采用基于WEB的数据库设计方式,即前端使用浏览器而后端使用WEB服务器加上关系数据库。后端在Windows的典型实现可能是Windows NT + IIS + Acess数据库或者是SQL服务器,IIS和数据库之间通过ASP技术使用ODBC进行连接,达到通过填写表单查询数据的功能; 后端在Linux系统的典型实现可能是Linux+ Apache + postgresql,Apache 和数据库之间通过PHP3提供的函数进行连接。使用上述方法的缺点是后端关系数据库的引入导致系统整体的性能降低和系统的管理比较繁琐,因为需要不断的进行数据类型的验证和事务的完整性的确认;并且前端用户对数据的控制不够灵活,用户权限的设置一般只能是设置在表一级而不是设置在记录一级。 目录服务的推出主要是解决上述数据库中存在的问题。目录与关系数据库相似,是指具有描述性的基于属性的记录集合,但它的数据类型主要是字符型,为了检索的需要添加了BIN (二进制数据)、CIS(忽略大小写)、CES(大小写敏感)、TEL(电话型)等语法(Syntax),而不是关系数据库提供的整数、浮点数、日期、货币等类型,同样也不提供象关系数据库中普遍包含的大量的函数,它主要面向数据的查询服务(查询和修改操作比一般是大于10:1),不提供事务的回滚(rollback)机制,它的数据修改使用简单的锁定机制实现All-or-Nothing,它的目标是快速响应和大容量查询并且提供多目录服务器的信息复制功能。 现在该说说LDAP目录到底有些什么优势了。现在LDAP的流行是很多因数共同作用的结果。可能LDAP最大的优势是:可以在任何计算机平台上,用很容易获得的而且数目不断增加的LDAP的客户端程序访问LDAP目录。而且也很容易定制应用程序为它加上LDAP的支持。

LDAP协议与Weblogic Server设置简介

LDAP:轻量级目录访问协议及相关设置简介 LDAP的英文全称是Lightweight Directory Access Protocol,即轻量级目录访 问协议.我们知道,人们对计算机网络的使用和管理涉及了各种庞杂的资源,信息. 为了提高性能,便于使用,有效管理分布式应用的服务,资源,用户及别的对象信 息,这些信息需要清晰,一致地组织起来.基于这样的需求,描述各种用户,应用, 文件,打印机和其它可从网络访问的资源的信息被集中到一个特殊的数据库中, 这种数据库被称为目录.目录存放对象的公开或非公开的信息,这些信息以某种 顺序组织,描述了每个对象的细节.电话簿,图书馆藏书卡片目录就是常见的目录. LDAP是基于X.500标准的,访问 X.500 目录需要某种协议,例如:目录访问 协议 (DAP).然而,DAP 需要大量的系统资源和支持机制来处理复杂的协议.LDAP 仅通过使用原始 X.500目录存取协议 (DAP) 的功能子集而减少了所需的系统 资源消耗,而且可以根据需要定制.此外,与X.500不同,LDAP支持TCP/IP,这对访 问Internet是必须的. 为了能对LDAP协议进行更好的理解,我们需要对以下概念有初步的认识: 目录:Directory,存放对象的信息,这些信息以某种顺序组织,详细描述每个对象. 目录信息树:DIT,Directory Information Tree,目录条目的集合构成了目录信息树。 条目:Entry,目录信息树中的一个结点,是一个对象信息的集合,是目录信息中最 基本的单位,包含该对象的一系列属性. 属性:Attribute,属性描述对象的特征.一个属性由属性类型(type)和一个或多 个属性值 (values)构成. 相对标识名:RDN,Relative Distinguished Name,条目的名字. 唯一标识名:DN,Distinguished Name,在一个目录信息树中唯一标识一个条目的 名字. LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol) 是实现提供被称为目录服务的信息服务。目录服务是一种特殊的数据库系统, 其专门针对读取,浏览和搜索操作进行了特定的优化。目录一般用来包含描述性的,基于属性的信息并支持精细复杂的过滤能力。目录一般不支持通用数据库针 对大量更新操作操作需要的复杂的事务管理或回卷策略。而目录服务的更新则一 般都非常简单。这种目录可以存储包括个人信息、web链结、 jpeg图像等各种 信息。为了访问存储在目录中的信息,就需要使用运行在TCP/IP之上的访问协议—LDAP。 LDAP目录中的信息是是按照树型结构组织,具体信息存储在条目(entry)的 数据结构中。条目相当于关系数据库中表的记录;条目是具有区别名DN (Distinguished Name)的属性(Attribute),DN是用来引用条目的,DN相当 于关系数据库表中的关键字(Primary Key)。属性由类型(Type)和一个或多 个值(Values)组成,相当于关系数据库中的字段(Field)由字段名和数据类 型组成,只是为了方便检索的需要,LDAP中的Type可以有多个Value,而不是 关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的。LDAP中 条目的组织一般按照地理位置和组织关系进行组织,非常的直观。LDAP把数据

Java LDAP介绍

Java:LDAP (1) 什么是LDAP LDAP, Lightweight Directory Access Protocol, 轻量级目录访问协议,是X.500协议的简化版本。LDAP的规范为RFC 2251(ftp://https://www.doczj.com/doc/d217316017.html,/in-notes/rfc2251.txt),"The Lightweight Directory Access Protocol (v3)"。Microfost的Active Directory,Lotus的Domino Directory、IBM的WebSphere都是LDAP的实现,LDAP的开源实现是OpenLDAP。 LDAP由以下几部分组成: LDAP协议,一个标准的、可扩展的Internet目录访问协议; 使用目录的四种模型:信息模型,信息如何存储;命名模型,如何安排和引用目录数据;功能模型,如何操作数据;安全模型,如何进行访问控制; LDIF,LDAP Data Interchange Format,标准的交换目录数据的文本格式; LDAP服务软件; 和LDAP服务软件捆绑在一起的命令行工具和基于LDAP的应用程序; LDAP编程API,用于开发LDAP客户应用程序。 (2) LDAP协议 客户端发起一个请求消息,请求LDAP服务器的某条目录信息,该请求包含唯一的消息ID,如下图。 服务器收到该请求后,返回客户需要的信息,然后在一条独立的消息中返回结果代码。客户端也可以在一条消息中请求多条目录信息,服务器依次返回这些目录条目,并在最后一条消息中返回结果代码,如下图。

客户端还可以同时发出多条请求消息,服务器响应这些请求,响应中包含请求消息ID,如下图。 $False$ LDAP协议的操作分为三大类: 查询操作:search, compare 更新操作:add, delete, modify, modify DN(rename) 认证和访问控制:bind, unbind, abandon 下图是一个典型的LDAP协议操作过程。 I. 客户端向LDAP服务器打开TCP连接,提交一个bind操作,该操作包含客户用来炎症的目录条目,以及验证凭据(通常为口令或者证书);

LDAP基本概念介绍(Lightweight Directory Access Protocol)

LDAP基本概念介绍(Lightweight Directory Access Protocol) 如果你在计算机行业工作,那么对LDAP可能早有耳闻了。想深入地了解LDAP吗?那么可以好好地读一下这篇文章。这篇介绍性的文章是一系列介绍如何在企业中设计、实现和集成LDAP环境的文章的头一篇。主要是先让你熟悉一下LDAP的基本概念,那些比较困难的细节问题将放到以后讨论。在这篇文章中我们将要介绍: 什么是LDAP? 什么时候该用LDAP存储数据? LDAP目录树的结构 单独的LDAP记录 作为例子的一个单独的数据项 LDAP复制 安全和访问控制 现在LDAP技术不仅发展得很快而且也是激动人心的。在企业范围内实现LDAP可以让运行在几乎所有计算机平台上的所有的应用程序从LDAP目录中获取信息。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。通过把LDAP目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至连主要的数据源都可以放在任何地方。如果Oracle、Sybase、Informix或Microsoft SQL数据库中已经存储了类似的数据,那么LDAP和这些数据库到底有什么不同呢?是什么让它更具优势?请继续读下去吧!

什么是LDAP? LDAP的英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP 的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。 怎么使用LDAP这个术语呢? 在日常交谈中,你可能会听到有些人这么说:“我们要把那些东西存在LDAP中吗?”,或者“从LDAP数据库中取出那些数据!”,又或者“我们怎么把LDAP和关系型数据库集成在一起?”。严格地说,LDAP根本不是数据库而是用来访问存储在信息目录(也就是LDAP目录)中的信息的协议。更为确切和正式的说法应该是象这样的:“通过使用LDAP,可以在信息目录的正确位置读取(或存储)数据”。但是,也没有必要吹毛求疵,尽管表达得不够准确,我们也都知道对方在说什么。 LDAP目录是数据库吗? 就象Sybase、Oracle、Informix或Microsoft的数据库管理系统(DBMS)是用于处理查询和更新关系型数据库那样,LDAP服务器也是用来处理查询和更新LDAP目录的。换句话来说LDAP目录也是一种类型的数据库,但是不是关系型数据库。不象被设计成每分钟需要处理成百上千条数据变化的数据库,例如:在电子商务中经常用到的在线交易处理(OLTP)系统,LDAP主要是优化数据读取的性能。 LDAP目录的优势 现在该说说LDAP目录到底有些什么优势了。现在LDAP的流行是很多因数共同作用的结果。我在这里说的不过是一些基本的原因,请你注意一下这不过是一小部分原因。 可能LDAP最大的优势是:可以在任何计算机平台上,用很容易获得的而且数目不断增加的LDAP的客户端

OpenLDAP

OpenLDAP篇 LDAP(轻量级目录访问服务),通过配置这个服务,我们也可以在linux下面使用目录的形式管理用户,就像windows下面的AD一样,方便我们管理。下面我们就一起来配置openldap服务。本文运行环境:CentOS 5。 软件需求: db-4.7.25.tar.gz (https://www.doczj.com/doc/d217316017.html,/technology/global/cn/software/products/berkeley-db/index.h tml) openldap-stable-20090411.tgz (https://www.doczj.com/doc/d217316017.html,/software/download/) phpldapadmin-0.9.8.5.tar.gz (https://www.doczj.com/doc/d217316017.html,/wiki/index.php/Main_Page) 另外,运行phpldapadmin需要apache和php的支持,有关apache和php的安装,大家可以参考我的另一篇文章:Linux服务器部署系列之一—Apache篇 (https://www.doczj.com/doc/d217316017.html,/379574/168534) 1. 安装openldap 1)安装BerkeleyDB # tar zxvf db-4.7.25.tar.gz # cd db-4.7.25/build_unix # ../dist/configure # make

# make install # vi /etc/ld.so.conf 加入一下语句: /usr/local/BerkeleyDB.4.7/lib # /sbin/ldconfig 2)安装openldap # tar zxvf openldap-stable-20090411.tgz # cd openldap-2.4.16 # env CPPFLAGS=”-I/usr/local/BerkeleyDB.4.7/include” LDFLAGS=” -L/usr/local/BerkeleyDB.4.7/lib” ./configure --prefix=/usr/local/openldap --enable-ldbm # make depend # make # make install 3)检查安装结果 安装好后,系统会自动生成一些.schema文件,我们可以使用命令:# ll /usr/local/openldap/etc/openldap/schema/*.schema来查看,如下图:

相关主题
文本预览
相关文档 最新文档