`
alartin
  • 浏览: 209843 次
社区版块
存档分类
最新评论

用LDAP/Directory 还是数据库?

阅读更多
看到几篇介绍LDAP的好文章,任何对于LDAP持有兴趣,却不是高手的人都需要看看(注意这里LDAP和Directory姑且算作一个意思,严格的说, Directory是目录服务,LDAP是访问这个目录服务的协议,看客自行理解就行了):

  1. LDAP是什么东西,我需要它么?
  2. 我需要LDAP还是数据库?
  3. LDAP精炼总结
本质上来说, LDAP适合层次结构,并且特别注重读取,查找速度,对写速度要求不是特别高的数据存储. 它有几个特征:
  1. 超快的读取速度
  2. 相对静态的数据, 这些数据的更新不能太频繁, 例如存储用户的电话号码(不能老改吧)
  3. 分布式. 分布式在这里可以有两种意思,第一种就是本身存储的数据可以分布在多个地方, 另外一种是将特定数据和应用解耦,这样能够成为单点登陆的基础.比如公司有好多需要验证身份才能使用的应用, 每个应用应该把验证独立解耦,交给一个中心化的地方来验证, 那么就有可能实现单点登陆, 这个验证(比如用户名,密码,权限)可以使用LDAP和应用解耦.
  4. 层次结构, 数据具有层次的结构,能够用层次结构表明数据的组织和关系
  5. 面向对象的, 在LDAP中的元素是对象化的
  6. 标准化的模式, 通过模式,你可以定义存储数据的类和属性.
  7. 支持多值属性
  8. 支持多个主动复制, 允许同时对多个LDAP服务器进行数据镜像
那么,大家都拿LDAP干什么呢? LDAP在三个方面非常流行:
  1. 用于用户的验证,想象一下,如果每个应用都需要自行进行设计用户表结构和验证的痛苦.
  2. 用于用户的授权
  3. 用于存储用户信息, 例如姓名,电话,地址,爱好等等. 这些信息通常每个应用都需要, 可以让他们共享这个资源.
什么情况下要用数据库,而不是LDAP?
  1. 数据经常变化, 比如银行账户中的数据
  2. 数据需要严格的事务处理保证原子性和一致性
  3. 数据的写和读取查找一样重要或者更重要
分享到:
评论

相关推荐

    loginServer CAS / josso / LDAP / RBAC / ACL

    3. **LDAP(Lightweight Directory Access Protocol)**:LDAP 是一种用于访问和管理分布式目录服务的标准协议。在企业环境中,LDAP 通常用于存储用户账户信息和权限,便于进行身份验证和授权。登录服务器可以通过 ...

    Novell.Directory.Ldap.dll

    这篇长文将详细解析Novell.Directory.Ldap.dll的使用方法及其实现原理。 首先,我们需要了解Directory和eDirectory的概念。Directory服务是一种分布式数据库,存储网络上的用户、资源和设备信息,便于网络管理。...

    LdapBrowser2.82版和LDAP使用手册

    LDAP,全称为轻量级目录访问协议(Lightweight Directory Access Protocol),是一种用于访问和管理分布式目录服务的标准网络协议。它主要用于存储和检索用户、组织、资源等信息,广泛应用于身份验证、权限控制、...

    用perl操作LDAP数据库

    通过以上介绍,你应该对如何用Perl操作LDAP数据库有了初步的了解。实践中,结合具体的业务需求和LDAP目录结构,调整代码以满足特定场景的需求。阅读和理解Net::LDAP模块的文档以及相关的Perl LDAP教程,将有助于...

    understanding and deploying ldap directory services,2nd Edtion,pdf

    《理解与部署LDAP目录服务》第二版是一本深入探讨 Lightweight Directory Access Protocol (LDAP) 技术的专业书籍。这本书旨在帮助读者全面理解 LDAP 的概念、架构和实现,以及如何在实际环境中部署和管理 LDAP 目录...

    Open_LDAP安装配置

    3. **初始化数据库**:使用`slapadd`命令将LDIF(LDAP Data Interchange Format)文件导入到数据库中,以填充初始数据。 4. **启动与验证**:启动Open LDAP服务,如在Linux中使用`systemctl start slapd`,然后通过...

    ldap-example.zip_ldap_php directory_php ldap_zip

    "directory"可能指的是在LDAP服务器上的组织结构或用户数据库。"zip"则表示所有这些内容被压缩在一个文件中。 描述中的"Active Directory Authentication"进一步明确了这个示例是关于使用PHP与Microsoft Active ...

    LDAP入门资料 刚开始学

    LDAP 的英文全称是 Lightweight Directory Access Protocol,一般都简称为 LDAP。它是基于 X.500 标准的,但是简单多了并且可以根据需要定制。 2. LDAP 的优点 LDAP 的优点是可以在任何计算机平台上,用很容易获得...

    ldap目录数据库讲义

    【LDAP目录数据库详解】 LDAP(轻量级目录访问协议)是一种用于访问和管理分布式目录信息的标准协议,它在IT行业中广泛应用于身份验证、用户账户管理、权限控制等多个领域。相较于X.500,LDAP更加轻量、高效,并且...

    LDAP目录数据库详细使用手册及原理分析.doc

    ### LDAP目录数据库详细使用手册及原理分析 #### 一、LDAP简介 LDAP(Lightweight Directory Access Protocol,轻量级目录访问协议)是一种基于X.500标准的目录访问协议,但进行了大量的简化以适应互联网环境下的...

    基于关系数据库的LDAP证书查询服务器的实现

    ### 基于关系数据库的LDAP证书查询服务器的实现 #### 概述 随着网络通信技术的迅速发展,网络安全已成为互联网应用中不可忽视的关键因素。公钥基础设施(Public Key Infrastructure, PKI)作为保障网络通信安全的...

    Sun Directory Server(Ldap)实例创建手册

    Sun Directory Server,也被称为Sun One Directory Server,是Sun Microsystems(现已被Oracle公司收购)开发的一款强大的 Lightweight Directory Access Protocol (LDAP) 服务器。LDAP是一种开放标准的目录服务协议...

    Spring Boot中使用LDAP来统一管理用户信息的示例

    Spring Boot 中使用 LDAP 统一管理用户信息的示例 本篇文章主要介绍了 Spring Boot 中使用 LDAP 来统一管理用户信息的示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。下面我们将详细介绍 LDAP 的基础...

    有关ldap包的下载和oracle连接数据库oracle9i的包

    在编写代码时,可以使用JDBC的`DriverManager.getConnection()`方法来建立与Oracle数据库的连接,而使用Oracle LDAP客户端库则需要调用相应的API来执行LDAP操作。 总结来说,这个压缩包提供的是连接Oracle 9i数据库...

    使用Tomcat验证LDAP by openDJ

    【标题】"使用Tomcat验证LDAP by openDJ" 涉及到的知识点主要集中在两个核心领域:Apache Tomcat服务器和 Lightweight Directory Access Protocol (LDAP)。在这个场景中,openDJ作为一个开源的LDAP服务器,用于存储...

    aix配置openldap

    OpenLDAP使用Berkeley DB作为默认的数据库引擎。你需要初始化数据库并导入数据: ```sh cd /var/lib/ldap sudo ldap_initialize /etc/ldap/slapd.d sudo slapadd -F /etc/ldap/slapd.d -l /path/to/your/ldif/file ...

    用sql语句的方式操作ldap

    综上所述,"用sql语句的方式操作ldap"涉及到理解 LDAP 的特性和结构,以及如何使用JNDI API在Java应用程序中执行这些操作。通过这样的方式,开发者可以利用熟悉的SQL概念来管理LDAP目录,从而简化开发流程。

    Linux_LDAP.rar_ldap

    Linux LDAP是一种轻量级目录访问协议(Lightweight Directory Access Protocol),它是互联网标准协议之一,用于存储和检索分布式目录服务信息。在Linux系统中,LDAP常用于企业环境中的身份验证、授权和用户账户管理...

    phpLdap.rar

    PHP LDAP 是 PHP 语言的一个扩展,用于与 Lightweight Directory Access Protocol (LDAP) 服务器进行交互。LDAP 是一种用于存储和检索分布式目录信息的标准协议,常用于组织内部的身份验证、用户管理以及资源查找。...

Global site tag (gtag.js) - Google Analytics