LDAP:

的英文全称是Lightweight Directory Access Protocol,简称为LDAP。LDAP是轻量目录访问协议[1],它是基于X.500标准的,但是简单多了并且可以根据需要定制。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等.

简单的说来,LDAP是一个得到关于人或者资源的集中、静态数据的快速方式,用来发布目录信息到许多不同资源的协议。通常它都作为一个集中的地址本使用,类似于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service)等网络目录,也类似于你在花园中所看到的树木。

LDAP和关系数据库是两种不同层次的概念,后者是存贮方式(同一层次如网格数据库,对象数据库),前者是存贮模式和访问协议。LDAP是一个比关系数据库抽象层次更高的存贮概念,与关系数据库的查询语言SQL属同一级别。LDAP最基本的形式是一个连接数据库的标准方式。该数据库为读查询作了优化。因此它可以很快地得到查询结果,不过在其它方面,例如更新,就慢得多。从另一个意义上 LDAP是实现了指定的数据结构的存贮,它是一种特殊的数据库。但是LDAP和一般的数据库不同,明确这一点是很重要的。 LDAP对查询进行了优化,与写性能相比LDAP的读性能要优秀很多。

服务器

LDAP服务器可以用“推”或“拉”的方法复制部分或全部数据,例如:可以把数据“推”到远程的办公室,以增加数据的安全性。复制技术是内置在LDAP服务器中的而且很容易配置。如果要在DBMS中使用相同的复制功能,数据库厂商就会要你支付额外的费用,而且也很难管理。

什么时候该用LDAP存储数据?

如果下面每一个问题的答案都是"是",那么把数据存在LDAP中就是一个好主意。

l 需要在任何平台上都能读取数据吗?

l 每一个单独的记录项是不是每一天都只有很少的改变?

信息模型:描述LDAP的信息表示方式

在LDAP中信息以树状方式组织,在树状信息中的基本数据单元是条目,而每个条目由属性构成,属性中存储有属性值;LDAP中的信息模式,类似于面向对象的概念,在LDAP中每个条目必须属于某个或多个对象类(Object Class),每个Object Class由多个属性类型组成,每个属性类型有所对应的语法和匹配规则;对象类和属性类型的定义均可以使用继承的概念。每个条目创建时,必须定义所属的对象类,必须提供对象类中的必选属性类型的属性值,在LDAP中一个属性类型可以对应多个值。

在LDAP中把对象类、属性类型、语法和匹配规则统称为Schema,在LDAP中有许多系统对象类、属性类型、语法和匹配规则,这些系统Schema在LDAP标准中进行了规定,同时不同的应用领域也定义了自己的Schema,同时用户在应用时,也可以根据需要自定义Schema。

LDAP中为了加快查询的速度,针对不同的数据类型,可以提供不同的匹配方法,如针对字符串类型的相等、模糊、大于小于均提供自己的匹配规则。

过滤器和语法

LDAP是一个查询为主的记录结构,无论是何种查询方式,最终都由过滤器缺点查询的条件。过滤器相当于SQL中的WHERE子句。任何LDAP的类过滤和字符串都必须放在括号内,如(objectclass=*),指列出所有类型的记录(不过分类)。

可以使用=,>=,<=,~=(约等于)进行比较,如(number<=100)。合并条件是最怪的,必须把操作符放在两个操作对象的前面而不是中间,单一操作对象用括号括起来。如

l A与B,不是A&B,而是(&(A)(B))。

l 或使用"|"表示;

l 非使用"!"表示。

l 对于"与",或"或"在操作符后可以跟多个条件表达式,但非后则只参是单个表达式。

目录优势:

1.LDAP目录服务可以有效地解决众多网络服务的用户账户问题。

2.LDAP目录服务规定了统一的身份信息数据库、身份认证机制和接口,实现了资源和信息的统一管理,保证了数据的一致性和完整性。

3.LDAP目录服务是以树状的层次结构来描述数据信息的,此种模型适应了众多行业应用的业务组织结构。[3]

LDAP 使用说明

  • LDAP 支持 使用 LADP 与 Windows AD 的用户作为 jumpserver 登录用户
  • 已经存在的用户不能与要登录的 LDAP 用户有用户名和邮箱同名, 具有唯一性
  1. LDAP 设置说明
LDAP地址  ldap://serverurl:389  或者  ldaps://serverurl:636(需要勾选ssl)
# 此处是设置LDAP的服务器,推荐使用IP, 防止解析问题 绑定DN cn=administrator,cn=Users,dc=jumpserver,dc=org
# 这里是设置认证用户的信息, jumpserver会使用这个用户去校验ldap的信息是否正确 密码 # 上面认证用户的密码 用户OU ou=jumpserver,dc=jumpserver,dc=org
# 这里是设置用来登录jumpserver的组织单元, 比如我要用某个ou的用户来登录jumpserver
# 多OU用法 ou=jumpserver,dc=jumpserver,dc=org | ou=user,dc=jumpserver,dc=org | ou=xxx,dc=jumpserver,dc=org 用户过滤器 (cn=%(user)s)
# 这里是设置筛选ldap用户的哪些属性, 不能有多余的空格 LADP属性映射 {"username": "cn", "name": "sn", "email": "mail"}
username name email 是jumpserver的用户属性(不可更改)
cn sn mail 是ldap的用户属性(可自定义)
# 这里的意思是, 把ldap用户的属性映射到jumpserver上 使用SSL
# 勾选后 LDAP地址 需要设置成 ldaps://serverurl:636 启动LDAP认证
# 如果需要使用 LDAP或域用户 登录 jumpserver,则必选
  1. 补充
  2. DN 一定要是完整的DN, 不能跳过OU, 可以使用其他工具查询
    如:cn=admin,ou=aaa,dc=jumpserver,dc=org,必须要写成cn=admin,ou=aaa,dc=jumpserver,dc=org 不能缩写成cn=admin,dc=jumpserver,dc=org 用户OU 用户OU可以只写顶层OU, 不写子OU
    如:ou=aaa,ou=bbb,ou=ccc,dc=jumpserver,dc=org,可以只写ou=ccc,dc=jumpserver,dc=org,根据需求自行修改 用户过滤器 筛选用户的规则, 点击测试连接就是根据这个规则到用户OU里面去检索用户, 可以自定义规则
    如:(uid=%(user)s) 或 (sAMAccountName=%(user)s) 等, 这里的属性需要与下面的属性映射设置一致 LADP属性映射 username name email 这三项不可修改删除, 属性映射的字段必须存在, 且登录用户名和邮件不可以重复
    如:{"username": "uid", "name": "sn", "email": "mail"} 或 {"username": "sAMAccountName", "name": "cn", "email": "mail"}
    "username": "uid" 这里的 uid 必须和上面的 (uid=%(user)s) 这里的 uid 一致
    如果上面是(sAMAccountName=%(user)s) 那么下面也应该修改为{"username": "sAMAccountName",
    username 是 jumpserver 的用户用户名, name 是 jumpserver 的用户名称, mail 是 jumpserver 用户的邮箱
    属性映射的意思是把ldap的什么属性来作为jumpserver的用户用户名, 把ldap的什么属性作为jumpserver的用户名称, 把ldap的什么属性作为jumpserver的用户邮箱

LDAP&it's usage的更多相关文章

  1. ldap,openldap-docker,

    ldap basic and usage in devops: https://blog.csdn.net/weixin_42578481/article/details/80863890 maybe ...

  2. jenkins:集成sonar代码扫描+发送邮件

    前提: Jenkins JDK 目录: 1.安装sonar插件:SonarQube Scanner for Jenkins 2.安装SonarQube 3.安装sonar-scanner ++++++ ...

  3. ldap部署相关,ldap双机\LAM配置管理\ldap备份还原

    前言 接之前我的文章,django+ldap+memcache实现单点登录+统一认证 就单点登录实现过程进行详细记录,ldap是一切的基础,可以把它理解成一个读强写弱的文件类型数据库,统一认证我们通过 ...

  4. LDAP注入与防御解析

    [目录] 0x1 LDAP介绍 0x2 LDAP注入攻击及防御 0x3 参考资料 0x1 LDAP介绍 1 LDAP出现的背景 LDAP(Lightweight Directory Access Pr ...

  5. Hadoop生态圈-使用FreeIPA安装Kerberos和LDAP

    Hadoop生态圈-使用FreeIPA安装Kerberos和LDAP 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 有些大数据平台只是简单地通过防火墙来解决他们的网络安全问题.十分 ...

  6. openvpn通过ldap或ad统一认证解决方案思路分享

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/986933 缘起:成 ...

  7. Mantis集成 LDAP 认证

    mantis的用户认证函数Authentication中相关有 $g_login_method MD5 LDAP PLAIN CRYPT CRYPT_FULL_SALT BASIC_AUTH Some ...

  8. Django使用LDAP

    https://github.com/python-ldap/python-ldap Quick usage example: import ldap l = ldap.initialize(&quo ...

  9. 脚本自动创建ldap账号

    背景:客服那边人员流动性大,经常需要配置账号,每次创建账号配置权限比较繁琐. 配置脚本: ldapadduser.sh #!/bin/bash # add ldap user ] || [[ $ -n ...

随机推荐

  1. tensorflow (七) k-means

    tensorflow基础暂不介绍 Python 相关库的安装 在进入正式聚类实验之前,我们还需要配置计算及画图需要用到相关支持包. 安装 seaborn: pip install seaborn 安装 ...

  2. 我只想要Linux的IP地址

    大家都知道ifconfig 可以查看centos的ip地址,但是我如果只要ip地址该怎么办呢?首先上ifconfig [root@centos ~]# ifconfig eth0 eth0 Link ...

  3. Https 单向验证 双向验证

    通讯原理 participant Client participant Server Client->>Server: 以明文传输数据,主要有客户端支持的SSL版本等客户端支持的加密信息 ...

  4. 面试html部分

    1.DOM结构 —— 两个节点之间可能存在哪些关系以及如何在节点之间任意移动. DOM是文档对象模型的简称 DOM模型中两个节点可能存在的关系有两种:父子关系,兄弟关系. 添加节点:appendChi ...

  5. leetcode日记 HouseRobber I II

    House Robber I You are a professional robber planning to rob houses along a street. Each house has a ...

  6. Devexpress的DateEdit控件中DateTime与EditValue异同

    相同: 两者值相同,改变一个值都会引起另一个值做出相应改变. 不同: 1:在界面上对控件的编辑框进行操作时,EditValueChanged事件先响应,DateTimeChanged事件后响应. 2: ...

  7. oracle入门之对表数据查询(一)

    此文中用到的表是Scott用户中自带的三张表: 基本select语句 基本语法: select [distinct] *|{columnl,column2,column3..} from table ...

  8. RabbitMQ中,exchange1绑定exchange2,exchange1和exchange2都绑定queue1,此时消息发送给exchange1,queue1中有几条消息

    如题: 存在两个交换器 exchange1,exchange2 存在一个队列 queue1 存在三个绑定关系:exchange1绑定exchange2 ,exchange1绑定queue1,excha ...

  9. vmware10.0.1安装redhat linux6.2每次启动vm崩溃问题解决!

    最近在学习linux技术,安装了一套redhat linux6.2的环境,里面有软件若干,wmare用的是10.0.1的,最近每次出现登陆界面,输入root登陆后,wm就报错vmui不可恢复错误MEM ...

  10. Sharepoint 2016 配置FBA(二) 编辑Web,config文件

    使FBA生效,下一步在Sharepoint中设置Membership Provider,一个Membership Provider是一个从程序到任证库(credential store)的接口.这样允 ...