谈谈对LDAP的理解

之前学校里上过一门专业课《网络服务器配置与管理》,里面有提到LDAP这个概念;不过虽然学过,但一直没什么实感,最近在公司里总能看到LDAP登录,实在是绕不过去了,那就来说说吧。

1、简介

         要说这LDAP呀,学名叫Light Directory Access Protocol(轻量级的目录访问协议),是一种目录服务标准,它有个兄弟叫X.500(包括从X.501到X.509等一系列标准,它为网络用户提供分布式目录服务);其中LDAP支持TCP/IP,X.500不支持,而且LADP比X.500更为简单实用。这里我们提到了目录服务的概念,简单说下:我们知道目录是按一定规则排列的对象属性集合,是为查询、浏览和搜索而优化的特殊数据库,呈树状结构,就像文件系统目录一样;而目录服务指的是网络目录服务,是一种基于C/S模型的信息查询服务,各种网络资源都可以作为目录对象来管理;可以理解为是一种特殊的数据库,用来保存描述性的、基于属性的详细信息。目录数据库和关系数据库不同,它有优异的读性能,但写性能差,并且没有事务处理、回滚等复杂功能,不适于存储修改频繁的数据。所以目录天生是用来查询的,就好象它的名字一样。LDAP目录服务是由目录数据库和一套访问协议组成的系统。

2、为啥要使用这个东东?

        目前我所看到的,大多数是将LDAP同第三方的系统做结合,以此做到账号的打通。比如很多公司都会有自己的gitlab私有仓库,同时也会有自己的3A服务;对于自主研发的内部系统,通常会和内部SSO登录打通,而开源系统有着自己的账号管理体系,如果需要公司内部账号能够直接用到gitlab上,就需要换一种账号认证方式了。而LDAP就是干这么一件事(统一身份认证)的,这里上个图:

怎么样,看着是不是很眼熟。那么一个完整的LDAP是如何使用起来的呢?来看张架构图(来源于网络):

也就是说,要想使用LDAP统一认证,是需要搭建认证服务器的,毕竟总得有统一授权的地方吧。要搭建这么个东西,也不复杂,有看到一篇博客,推荐给大家:GitLab 通过ldap完成帐号认证

备注:LDAP是开放的Internet标准,支持跨平台的Internet协议,在业界中得到广泛认可的,并且市场上或者开源社区上的大多产品都加入了对LDAP的支持,因此对于这类系统,不需单独定制,只需要通过LDAP做简单的配置就可以与服务器做认证交互。“简单粗暴”,可以大大降低重复开发和对接的成本。

3、使用场景是啥?

       在第二点,也基本说到了;如果是纯公司内部使用的系统,且接了SSO,那就没LDAP啥事了。如果是开源的第三方系统,又不想在账号管理一块,对其做定制,那可能就需要LDAP的协助了,前提是这个开源系统是支持LDAP的。如果是公司内开发的项目,又想给第三方人员使用(贩卖给其他公司等);比如针对不同的域划分用户群体,都要实现认证,可能也需要LDAP这么个玩意。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值