文档章节

LDAP 基本概念

HarryWu
 HarryWu
发布于 2015/11/10 10:53
字数 867
阅读 98
收藏 0
点赞 0
评论 0

一.应用场景

今天,架构师在设计应用时常常会引用一些外部的信息,比如用户信息、组织架构、资源配置等。这些信息往往是结构化的。表现了现实世界中的组织规则,且内容相对稳定。

一个最常见的例子就是企业员工信息管理。企业在正常运营过程中,部门机构和人员岗位都相对稳定,每个员工的基本信息也是相对稳定的。这些信息组织起来后,可以被其他的各种IT系统共用。比如人事系统、财务系统、邮件办公以及各种处理系统都引用同一份员工数据。如果用来验证用户,则可以避免每套IT系统各自维护用户密码,轻松实现单点登录。


轻量级目录访问协议(Lightweight Directory Access Protocol,LDAP)就是这样一种国际标准。本质上,LDAP是基于TCP/IP的应用层协议,它不仅提供了数据的组织标准,也提供了数据的访问标准。基于LDAP的查询服务非常类似于查字典或是电话黄页,由于信息室以目录方式组织,所以称为 目录服务。那么信息存放在目录中和存放在数据库中什么区别?简单。


员工信息应该如何组织,有应该如何对外提供服务呢?

最容易想到的是设计一种员工表,将员工信息存放在数据库中。如果需要在体现人员部门机构,必然要把部门纳入数据库。机构是有层次的。

使用LDAP来管理员工信息则完全不同。首先LDAP对组织、人员的完整性、全面性的定义。

比如,一个人(person)必须有通用名(commonName,cn)和姓(surName,sn),同时可以有电话(telephoneNumber)、口令(userPassword)、描述(description)、参阅(seeAlso)等信息。


二、LDAP基本元素

1.目录(Directory)


2.目录树(DIT)

组织目录树,会参考x.500中对属性的相关约定。比如

c代表国家country、o代表机构、公司、企业、单位等organization、ou代表部门organizationUnit

cn代表姓名commonName、sn代表姓氏surName

                          c=cn

                         o=ibm

ou=dev            ou=sales        ot=finance

    |                        |

cn=tom            cn=jerry


3.条目(Entry)

每个条目都是目录管理的对象。是LDAP的最基本的颗粒,就想字典里面的词条。或是数据库里面的记录。每个条目都由一个唯一的标志名(Distinguished Name,DN),比如 cn=tom,ou=dev,o=ibm,c=cn.DN在语法上,由多个相对的标志名(Relative Distinguished Name,RDN)组成。它们之间以逗号隔开。

4. 属性(Attribute)

每个条目都可以有很多属性,比如常见的人员条目有姓名、地址、电话、职位等

5.属性类型(Attribute Type)

6.对象类(ObjectClass)

对象类是属性的集合。LDAP预想对很多人员组织机构中常见的对象,并将其封装成对象类。比如人员(person)还有姓(sn)、名(cn)、电话(telephoneNumber)、密码(userPassword)等属性。单位员工(orgnizationPerson)是人员(person)的继承类,除了上述的属性之外,还含有职务(title)、邮政编码(postalCode)、通信地址(postalAddress)等属性

对象类分为三种类型:结构类型(Structual)、抽象类型(Abstract)、辅助类型(Auxiliary)

例如

                          top

                        Person                                    ePerson

orgnizationPerson            residentialPerson

inetOrgPerson




© 著作权归作者所有

共有 人打赏支持
HarryWu
粉丝 5
博文 107
码字总数 48768
作品 0
马鞍山
LDAP- Openldap安装配置

一、基本概念 http://my.oschina.net/u/204498/blog/528382 二、安装 [root@hf0002 ~]# rpm -qa|grep openldap*openldap-servers-2.4.23-34.el65.1.x8664 => serveropenldap-clients-2.4.23-......

HarryWu ⋅ 2015/11/10 ⋅ 0

LDAP 入门知识

LDAP的基本概念 LDAP是轻量目录访问协议(Lightweight Directory Access Protocol)的缩写,是一种基于 客户机/服务器模式的目录服务访问协议.其实是一话号码簿,LDAP是一种特殊的数据库 LDAP...

张xtpgyaps ⋅ 2011/07/02 ⋅ 0

Linux 下openldap的详细介绍,搭建,配置管理,备份,案例

Ldap 服务应用指南 兼容(5.X&6.X) 1.1 Ldap 目录服务介绍 1.1.1 什么是目录服务(active directory)?? 目录是一类为了浏览和搜索数据为设计的特殊的数据库,目录服务是按照树状存储信息...

crazy_charles ⋅ 2015/10/14 ⋅ 0

Go语言连接Ldap

首先下载第三方库到beego的github.com里(具体连接方法可查看单元测试文件),https://github.com/mavricknz/ldap 具体Ldap与AD的参数如下图: 代码如下: 期间遇到的问题:ldap_bind: Inva...

cobish ⋅ 2016/08/22 ⋅ 0

关于Django项目接入LDAP用户认证

简介 以下内容主要介绍关于Django系统的后台admin管理页面中如何采用LDAP用户认证,并实现登陆的办法 用户认证接入前提 关于Django接入LDAP。首先,你得有一个LDAP系统(http://eric_ldap.osc...

HelloEric ⋅ 2016/08/15 ⋅ 0

如何进行版本库转换:hg-git-svn-git

版本库转换:hg->git->svn->git 有一些在客户现场定制的软件,要把这些零散的工具软件合并到一个 Git库中—— utils 库。如: · 一个名为 ldap_import 的工具,是在客户现场完成的,使用 hg...

openexpress1 ⋅ 2010/06/21 ⋅ 0

GitLab 集成 LDAP的困惑

有没有哪位同学有过类似的经验啊。集成LDAP的登陆。 我们的环境大概是这样的。域用户为 8888@dms.xxx.com # These settings are documented in more detail at # https://gitlab.com/gitlab...

倚小丁 ⋅ 2014/05/09 ⋅ 2

Django使用ldap认证登录

一、安装依赖包 yum install gcc libffi-devel python-devel openssl-devel openldap-devel -y 二、安装Python库 pip install python_ldappip install django-auth-ldap 三、修改django项目中......

aaron428 ⋅ 2017/12/13 ⋅ 0

Spring LDAP 2.0.2 发布

Spring LDAP 是一个用于操作 LDAP 的 Java 框架。它是基于 Spring 的 JdbcTemplate 模式。这个框架能够帮助开发人员简化 looking up,closing contexts,looping through NamingEnumeration...

chaun ⋅ 2014/07/01 ⋅ 0

Review board整合ldap

Review board整合ldap Review board本身已经支持ldap登录,我们需要做的就是一些安装、配置工作。首先review board需要python-ldap,如果没有安装,我们在打开ldap配置页面,就会提醒LDAP au...

youthflies ⋅ 2014/07/15 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

一起读书《深入浅出nodejs》-node模块机制

node 模块机制 前言 说到node,就不免得提到JavaScript。JavaScript自诞生以来,经历了工具类库、组件库、前端框架、前端应用的变迁。通过无数开发人员的努力,JavaScript不断被类聚和抽象,...

小草先森 ⋅ 昨天 ⋅ 0

Java桌球小游戏

其实算不上一个游戏,就是两张图片,不停的重画,改变ball图片的位置。一个左右直线碰撞的,一个有角度碰撞的。 左右直线碰撞 package com.bjsxt.test;import javax.swing.*;import j...

森林之下 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部