LDAP服务器可以用“推”或“拉”的方法复制部分或全部数据,例如:可以把数据“推”到远程的办公室,以增加数据的安全性 。复制技术是内置在LDAP服务器中的而且很容易配置 。如果要在DBMS中使用相同的复制功能,数据库产商就会要你支付额外的费用,而且也很难管理 。
LDAP允许你根据需要使用ACI(一般都称为ACL或者访问控制列表)控制对数据读和写的权限 。例如,设备管理员可以有权改变员工的工作地点和办公室号码,但是不允许改变记录中其它的域 。ACI可以根据谁访问数据、访问什么数据、数据存在什么地方以及其它对数据进行访问控制 。因为这些都是由LDAP目录服务器完成的 , 所以不用担心在客户端的应用程序上是否要进行安全检查 。
LDAP(Lightweight Directory Acess Protocol)是目录服务在TCP/IP上的实现(RFC 1777 V2版和RFC 2251
V3版) 。它是对X500的目录协议的移植,但是简化了实现方法,所以称为轻量级的目录服务 。在LDAP中目录是按照树型结构组织,目录由条目(Entry)组成,条目相当于关系数据库中表的记录;条目是具有区别名DN(Distinguished
Name)的属性(Attribute)集合,DN相当于关系数据库表中的关键字(Primary
Key);属性由类型(Type)和多个值(Values)组成,相当于关系数据库中的域(Field)由域名和数据类型组成,只是为了方便检索的需要,LDAP中的Type可以有多个Value , 而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的 。LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观 。LDAP把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库 。LDAP协议集还规定了DN的命名方法、存取控制方法、搜索格式、复制方法、URL格式、开发接口等
LDAP对于这样存储这样的信息最为有用,也就是数据需要从不同的地点读取,但是不需要经常更新 。
例如,这些信息存储在LDAP目录中是十分有效的:
l 公司员工的电话号码簿和组织结构图
l 客户的联系信息
l 计算机管理需要的信息 , 包括NIS映射、email假名,等等
l 软件包的配置信息
l 公用证书和安全密匙
什么时候该用LDAP存储数据
大多数的LDAP服务器都为读密集型的操作进行专门的优化 。因此,当从LDAP服务器中读取数据的时候会比从专门为OLTP优化的关系型数据库中读取数据快一个数量级 。也是因为专门为读的性能进行优化,大多数的LDAP目录服务器并不适合存储需要需要经常改变的数据 。例如,用LDAP服务器来存储电话号码是一个很好的选择,但是它不能作为电子商务站点的数据库服务器 。
如果下面每一个问题的答案都是“是” , 那么把数据存在LDAP中就是一个好主意 。
l 需要在任何平台上都能读取数据吗?
l 每一个单独的记录项是不是每一天都只有很少的改变?
l 可以把数据存在平面数据库(flat database)而不是关系型数据库中吗?换句话来说,也就是不管什么范式不范式的 , 把所有东西都存在一个记录中(差不多只要满足第一范式) 。
最后一个问题可能会唬住一些人,其实用平面数据库去存储一些关系型的数据也是很一般的 。例如 , 一条公司员工的记录就可以包含经理的登录名 。用LDAP来存储这类信息是很方便的 。一个简单的判断方法:如果可以把保数据存在一张张的卡片里,就可以很容易地把它存在LDAP目录里 。
安全和访问控制
LDAP提供很复杂的不同层次的访问控制或者ACI 。因这些访问可以在服务器端控制,这比用客户端的软件保证数据的安全可安全多了 。
推荐阅读
- 经典射击类游戏小说,射击的小说
- 怎么让手机显示虚假信号,怎么让手机显示虚拟号码
- 角色扮演所有游戏,角色扮演游戏手游
- 钉钉直播有网址,钉钉网络直播
- go语言cicd Go语言Web框架对比
- 手机连接了wifi怎么让电脑也连接,手机连接上自家wifi不可上网怎么办
- 体育竞技类游戏的推广,体育竞赛类游戏
- vb.net基本知识的简单介绍
- jquery轮播动画特效,jquery轮播图自动播放