在我参与的许多项目中,我一直与LDAP保持联系,但事实是,我真的不明白它.我认为它只是一个人员目录,但在我发现它可以包含层次结构中的任何对象之后.
我在我的盒子里安装了openldap,我发现了许多关于安装的教程.
什么是LDAP?LDAP是正确选择的场景是什么?使用它时我应该知道哪些LDAP概念?LDAP的优点是什么?它只是因为旧的应用程序使用它吗?互联网上是否有一个好的文档解释所有这些问题?
更新:补充答案我发现此链接包含像我这样的LDAP新手的快速入门指南.
Joh*_*lla 39
什么是LDAP?LDAP是正确选择的场景是什么?
LDAP是一种用于访问适合存储在目录中的对象的协议.某些东西是否"合适"是一个完全主观的决定,留给实施者,但通常这意味着许多对象的集合,每个对象都有不经常(或从未)更新的数据,其中每个对象都有一个明显或规范的方式来查找:
等等.
请注意,LDAP本身只是一个协议,并不提供任何实际存储 - 以同样的方式,HTTP并不暗示您是否使用Apache,Jetty,Tomcat,Mongrel等.作为Web服务器.(一般来说,LDAP的一个问题是混淆名称的重用意味着不同的东西.维基百科有一个很好的部分.)
小智 13
DIT是一种分层描述方案,非常适合B-Tree algos,在大多数情况下会产生巨大的搜索性能.像OpenDS这样的Directory Server以微秒为单位返回索引搜索,而RDBMS系统则慢得多.目录服务器(通常称为LDAP服务器)交换资源(RAM,CPU)以实现快速读取响应.RDBMS系统在管理所讨论的数据方面提供了更多功能.需要更新或零更新,简单和小型网络协议的速度?使用目录服务器.需要数据管理和挖掘功能,和/或数据库的高变化率以及数据之间定义的关系方面?使用RDBMS(MySQL是你最好的选择).
LDAP具有O(1)读取性能,以换取O(更糟糕的是)写入性能.它非常适合经常访问但很少更改的数据 - 人员,计算机名称和地址等目录.(因此首字母缩略词:轻量级目录访问协议.)
在降低开发人员熟悉度和奇怪的性能特征方面,使用非关系型数据库的痛苦小于获得快速读取访问权限的情况,LDAP是正确的选择.
此链接将解释LDAP http://blogs.oracle.com/raghuvir/entry/ldap
我们在办公室使用LDAP在公司范围内查找电子邮件地址.我们也将其用作内部应用程序的单一源代码登录服务.
我喜欢的一个观点是LDAP是持久性存储上的应用程序,数据库是持久性存储.两者都可用于存储用户信息.
LDAP为您提供了一个在数据库中更难做的层次结构.您可以在数据库中创建层次结构,但是执行委托(这些行仅属于您)或行上的ACL更加困难.因此,如果使用LDAP存储用户身份,则可以更轻松地将安全问题排除在数据库之外.试图在数据库中解决它是很奇怪的.
同时,LDAP很难报告(将LDAP转换为数据库以进行报告).在树中深处存储需要快速搜索的属性可能会对性能造成问题(不要这样做,有侧边的数据库或者尝试通过重新设计DIT来展平查询).在非常深的DIT中存储所有地方的属性只是糟糕的LDAP或系统设计,但有时如果您与供应商产品或传统应用程序绑定则不可避免.
| 归档时间: |
|
| 查看次数: |
7002 次 |
| 最近记录: |