LDAP目录树的结构(转)

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

LDAP目录以树状的层次结构来存储数据。如果你对自顶向下的DNS树或UNIX文件的目录树比较熟悉,也就很容易掌握LDAP目录树这个概念了。就象DNS的主机名那样,LDAP目录记录的标识名(Distinguished Name,简称DN)是用来读取单个记录,以及回溯到树的顶部。后面会做详细地介绍。

为什么要用层次结构来组织数据呢?原因是多方面的。下面是可能遇到的一些情况:


l 如果你想把所有的美国客户的联系信息都“推”到位于到西雅图办公室(负责营销)的 LDAP 服务器上,但是你不想把公司的资产管理信息“推”到那里。

l 你可能想根据目录树的结构给予不同的员工组不同的权限。在下面的例子里,资产管理组对“asset-mgmt”部分有完全的访问权限,但是不能访问其它地方。

l LDAP存储和复制功能结合起来,可以定制目录树的结构以降低对WAN带宽的要求。位于西雅图的营销办公室需要每分钟更新的美国销售状况的信息,但是欧洲的销售情况就只要每小时更新一次就行了。

刨根问底:基准DN

LDAP目录树的最顶部就是根,也就是所谓的“基准DN”。基准DN通常使用下面列出的三种格式之一。假定我在名为FooBar的电子商务公司工作,这家公司在Internet上的名字是foobar.com

o="FooBar, Inc.", c=US

(以X.500格式表示的基准DN

在这个例子中,o=FooBar, Inc. 表示组织名,在这里就是公司名的同义词。c=US 表示公司的总部在美国。以前,一般都用这种方式来表示基准DN。但是事物总是在不断变化的,现在所有的公司都已经(或计划)上Internet上。随着Internet的全球化,在基准DN中使用国家代码很容易让人产生混淆。现在,X.500格式发展成下面列出的两种格式。

o=foobar.com

(用公司的Internet地址表示的基准DN

这种格式很直观,用公司的域名作为基准DN。这也是现在最常用的格式。

dc=foobar, dc=com

(用DNS域名的不同部分组成的基准DN

就象上面那一种格式,这种格式也是以DNS域名为基础的,但是上面那种格式不改变域名(也就更易读),而这种格式把域名:foobar.com分成两部分 dc=foobar, dc=com在理论上,这种格式可能会更灵活一点,但是对于最终用户来说也更难记忆一点。考虑一下foobar.com这个例子。当foobar.comgizmo.com合并之后,可以简单的把“dc=com”当作基准DN。把新的记录放到已经存在的dc=gizmo, dc=com目录下,这样就简化了很多工作(当然,如果foobar.comwocket.edu合并,这个方法就不能用了)。如果LDAP服务器是新安装的,我建议你使用这种格式。再请注意一下,如果你打算使用活动目录(Actrive Directory),Microsoft已经限制你必须使用这种格式。

更上一层楼:在目录树中怎么组织数据

UNIX文件系统中,最顶层是根目录(root)。在根目录的下面有很多的文件和目录。象上面介绍的那样,LDAP目录也是用同样的方法组织起来的。

在根目录下,要把数据从逻辑上区分开。因为历史上(X.500)的原因,大多数LDAP目录用OU从逻辑上把数据分开来。OU表示“Organization Unit”,在X.500协议中是用来表示公司内部的机构:销售部、财务部,等等。现在LDAP还保留ou=这样的命名规则,但是扩展了分类的范围,可以分类为:ou=people, ou=groups, ou=devices,等等。更低一级的OU有时用来做更细的归类。例如:LDAP目录树(不包括单独的记录)可能会是这样的:

dc=foobar, dc=com

ou=customers

ou=asia

ou=europe

ou=usa

ou=employees

ou=rooms

ou=groups

ou=assets-mgmt

ou=nisgroups

ou=recipes

单独的LDAP记录

DNLDAP记录项的名字

LDAP目录中的所有记录项都有一个唯一的“Distinguished Name”,也就是DN。每一个LDAP记录项的DN是由两个部分组成的:相对DNRDN)和记录在LDAP目录中的位置。

RDNDN中与目录树的结构无关的部分。在LDAP目录中存储的记录项都要有一个名字,这个名字通常存在cnCommon Name)这个属性里。因为几乎所有的东西都有一个名字,在LDAP中存储的对象都用它们的cn值作为RDN的基础。如果我把最喜欢的吃燕麦粥食谱存为一个记录,我就会用cn=Oatmeal Deluxe作为记录项的RDN

l 我的LDAP目录的基准DNdc=foobar,dc=com

l 我把自己的食谱作为LDAP的记录项存在ou=recipes

l 我的LDAP记录项的RDN设为cn=Oatmeal Deluxe

上面这些构成了燕麦粥食谱的LDAP记录的完整DN。记住,DN的读法和DNS主机名类似。下面就是完整的DN

cn=Oatmeal Deluxe,ou=recipes,dc=foobar,dc=com

举一个实际的例子来说明DN

现在为公司的员工设置一个DN。可以用基于cnuidUser ID),作为典型的用户帐号。例如,FooBar的员工Fran Smith(登录名:fsmith)的DN可以为下面两种格式:

uid=fsmith,ou=employees,dc=foobar,dc=com

(基于登录名)

LDAP(以及X.500)用uid表示“User ID”,不要把它和UNIXuid号混淆了。大多数公司都会给每一个员工唯一的登录名,因此用这个办法可以很好地保存员工的信息。你不用担心以后还会有一个叫Fran Smith的加入公司,如果Fran改变了她的名字(结婚?离婚?或宗教原因?),也用不着改变LDAP记录项的DN

cn=Fran Smith,ou=employees,dc=foobar,dc=com

(基于姓名)

可以看到这种格式使用了Common NameCN)。可以把Common Name当成一个人的全名。这种格式有一个很明显的缺点就是:如果名字改变了,LDAP的记录就要从一个DN转移到另一个DN。但是,我们应该尽可能地避免改变一个记录项的DN

form:http://www.bloghome.cn/index.php?op=ViewArticle&articleId=2513&blogId=7

<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script> name="google_ads_frame" marginwidth="0" marginheight="0" src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-9232855773311077&dt=1114852795578&format=250x250_as&output=html&color_bg=FFFFFF&color_text=000000&color_link=0000FF&color_url=666666&color_border=FFFFFF&ad_type=text_image&u_h=768&u_w=1024&u_ah=740&u_aw=1024&u_cd=16&u_tz=480&u_his=26&u_java=true" frameborder="0" width="250" scrolling="no" height="250" allowtransparency="65535">
LDAP(配置文件) LDAPLDAP一般指轻型目录访问协议。轻型目录访问协议(英文:Lightweight Directory Access Protocol,缩写:LDAP,/ˈɛldæp/)是一个开放的,中立的,工业标准的应用协议,通过IP协议提供访问控制和维护分布式信息的目录信息。关闭SELinux跟防火墙安装LDAP修改配置文件 (不用去记 Teb键可以补全)启动服务LDAP并导入基本Schema。 阅读详情

相关推荐

LDAP统一认证服务解决方案

LDAP是什么 首先LDAP是一种通讯协议,LDAP支持TCP/IP。协议就是标准,并且是抽象的。在这套标准下,AD(Active Directory)是微软出的一套实现。 那AD是什么呢?暂且把它理解成是个数据库。也有很多人直接把LDAP说成数据库(可以把LDAP理解成存储数据的数据库)。像是其他数据库一样,LDAP也是有client端和server端。server端是用来存放资源,client端用来操作增删改查等操作。 而我们通常说的LDAP是指运行这个数据库的服务器。 可以简单理解AD =LD

崔向阳@李晓的博客 9190

C#读取AD域的组织结构和用户

C#读取微软的AD域里的组织结构和用户信息,有2个版本的,网页版,和控制台版本。完整代码,能够直接运行。

LDAP是什么 ? 看看他的原理介绍吧

一、什么是LDAP? (一)在介绍什么是LDAP之前,我们先来复习一个东西:“什么是目录服务?” 1. 目录服务是一个特殊的数据库,用来保存描述性的、基于属性的详细信息,支持过滤功能。 2. 是动态的,灵活的,易扩展的。 如:人员组织管理,电话簿,地址簿。 (二)了解完目录服务后,我们再来看看LDAP的介绍: LDAP(Light Directory Access Portocol),它是基于X.500标准的轻量级目录访问协议。 目录是一个为查询、浏览和搜索而优化的数据库,它成树状结构组织数据,类似文件目录

海鸥~ 5480

JAVA 获取LDAP的AD部门目录并换为树结构以及部门和用户的逻辑关联操作,文件夹目录结构

文件夹目录结构

Qensq的博客 2500

zTree根据LDAP树形结构数据展示到页面

页面需要展示通讯录信息,数据是存储LDAP服务器中,使用zTree来展示通讯录信息。 LDAP中的数据如下图,树形结构是根据distinguishedName的值来分级的。 如其中的一个记录的distinguishedName为: CN=丁XX,OU=市场部,OU=XX科技,OU=XX...

chengwei6112的博客 771

LDAP入门

LDAP入门 消失er关注 62017.12.07 22:19:19字数 1,191阅读 135,511 LDAP入门 首先要先理解什么是LDAP,当时我看了很多解释,也是云里雾里,弄不清楚。在这里给大家稍微捋一捋。 首先LDAP是一种通讯协议,LDAP支持TCP/IP。协议就是标准,并且是抽象的。在这套标准下,AD(Active Directory)是微软出的一套实现。 那AD是什么呢?暂且把它理解成是个数据库。也有很多人直接把LDAP说成数据库(可以把LDAP理解成存储数据的数据库)。像是其

cxu123321的博客 558

LDAP入门(1),不断验证自己是傻子的必经之路

最近由于工作需要,不得不学习LDAP,第一次听到这个名词一脸懵逼。这是啥?数据库?那DC、DN、OU、O、sn、cn这些又都是些什么妖魔鬼怪,表名?字段?怎么像感觉上世纪九十年代的计算机词汇一样。相信大多数刚入门LDAP的人都会被这些词汇整懵,当然也不排除有一些一看就了如指掌的大神,这些人请忽略这篇文章。该篇文章主要用作经验分享与学习记录。本人在此抛砖引玉,文章如有不妥或错误之处,还请指出,谢谢大...

Mnioc的博客 529

LDAPLDAP概念和原理介绍

LDAP(Lightweight Directory Access Portocol),它是基于X.500标准的轻量级目录访问协议。 目录是一个为查询、浏览和搜索而优化的数据库,它呈树状结构组织数据,类似文件目录一样。 目录数据库和关系数据库不同,它有优异的读性能,但写性能差,并且没有事务处理、回滚等复杂功能,不适于存储修改频繁的数据。所以目录天生是用来查询的,就好象它的名字一样。

康师傅没有眼泪 5694

设计LDAP目录树

设计LDAP目录树Michael Donnelly设计LDAP目录树原著:Michael Donnelly 翻译:Beta Xmu/Grind原文:http://www.ldapman.org/articles/tree_des...

cizn2013的博客 434

Docker搭建LDAP

LDAP的基本模型 每一个系统、协议都会有属于自己的模型,LDAP也不例外,在了解LDAP的基本模型之前我们需要先了解几个LDAP目录树概念: (一)目录树概念 1. 目录树:在一个目录服务系统中,整个目录信息集可以表示为一个目录信息树,树中的每个节点是一个条目。 2.条目:每个条目就是一条记录,每个条目有自己的唯一可区别的名称(DN)。 3. 对象类:与某个实体类型对应的一组属性,对象类是可以继承的,这样父类的必须属性也会被继承下来。 4. 属性:描述条目的某个方面的信息,一个属性由一个属.

草莓甜甜圈的博客 5556

LDAP目录树结构

LDAP目录以树状的层次结构存储数据。如果你对自顶向下的DNS树或UNIX文件的目录树比较熟悉,也就很容易掌握LDAP目录树这个概念了。就象DNS的主机名那样,LDAP目录记录的标识名(Distinguished Name,简称DN)是用来读取单个记录,以及回溯到树的顶部。后面会做详细地介绍。为什么要用层次结构来组织数据呢?原因是多方面的。下面是可能遇到的一些情况:l        如果你想把所

1045

什么是LDAP

LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。   L...

abcd379887057的博客 1484

LDAPLDAP 和 AD 介绍及使用 LDAP 操作 AD 域

LDAP 也可以说成是一种数据库,也有 Client 端和 Server 端。Server 端是用来存放数据,Client 端用于操作增删改查等操作,通常说的 LDAP 是指运行这个数据库的服务器。只不过,LDAP 数据库结构为树结构,数据存储在叶子节点上。

Code · Cloud · Think · Repeat 9979

spring ldap 使用心得

详细概念参考:详细介绍 什么是ldap DAP的英文全称是Lightweight Directory Access Protocol,简称为LDAPLDAP是轻量目录访问协议。目录服务是一个特殊的数据库,用来保存描述性的、基于属性的详细信息,支持过滤功能。它成树状结构组织数据,类似文件目录一样。目录数据库和关系数据库不同,它有优异的读性能,但写性能差,并且没有事务处理、回滚等复杂功能,不适于存储修改频繁的数据。所以目录天生是用来查询的,就好象它的名字一样。 为什么要使用LDAP LDAP是开放的Inter

qq_26387051的博客 3629

@Linux搭建LDAP认证服务

ldap搭建

欢迎光临本栈——“码栈仙”,一个架构师的脑洞收容所。 这里不生产代码,只做bug的搬运工。 1705

LDAP目录的结构

       LDAP目录以树状的层次结构来组织和存储数据,目录由目录入口对象 (Entry)组成,目录入口对象(Entry)相当于关系数据库中表的记录,可直接成为 LDAP目录记录,是具有区别名DN(Distinguished Name)的属性(Attribute) 集合,DN相当于关系数据库表中的关键字(Primary Key);属性由属性类型 (Type)和多个值(Va lu e s)组...

u022731937的博客 2856
上一篇: 通过一个简单的例子,介绍如何使用LDAP(转)
下一篇: java源代码分析工具PMD 3.1发布
zmxj
博客等级 码龄24年 25粉丝 108原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值