来源:https://sensu.io/blog/what-is-ldap
来至:https://baijiahao.baidu.com/s?id=1620805608101105264&wfr=spider&for=pc随着公司的发展,将用户数据和资产组织成层次结构的需求对于简化这些资产的存储访问变得至关重要。LDAP使组织能够存储、管理和保护有关组织、其用户和资产的信息。
在本指南中,我们将解释什么是LDAP、它的用途以及它是如何工作的。我们还将讨论LDAP目录和数据组件的级别——说明它如何成为管理关于组织和用户的数据的基本工具。
一、什么是轻量级目录访问协议(LDAP)?
LDAP是目录访问协议(DAP)的轻量级版本。它最初的目标是提供对X.500 Directory的低开销访问,但是该工具现在有更广泛的用途,我们将在后面讨论。
LDAP的主要功能是使用户能够查找关于组织、人员等的数据。它通过将数据存储在LDAP目录中并对访问该目录的用户进行身份验证来实现这个目标。它还提供了应用程序从目录服务发送和接收信息所需的通信语言。
您可以通过LDAP找到的数据和资源包括文件和用户信息。它与打印机、计算机和其他通过互联网或公司内部网连接的设备一起工作。
LDAP适用于大多数供应商目录服务,例如Active directory (AD)。 LDAP将用户、服务、系统、网络和应用程序的信息从目录服务共享到其他应用程序和服务变得更容易实现。
二、什么是LDAP认证?
用户不能访问存储在LDAP数据库或目录中的信息,除非先进行身份验证(证明他们所说的是谁)。数据库通常包含用户、组和权限信息,并将请求的信息传递给连接的应用程序。
LDAP身份验证是通过连接使用LDAP协议的目录服务来验证所提供的用户名和密码。一些以这种方式使用LDAP的目录服务器是OpenLDAP、MS Active Directory和OpenDJ。
以下是身份验证过程的分步分解:
1、客户机(一个LDAP就绪系统或应用程序)发送一个请求来访问存储在LDAP数据库中的信息。
2、客户机提供它们的LDAP服务器用户凭据(用户名和密码)。
3、LDAP服务器根据LDAP数据库中存储的核心用户身份数据交叉检查用户提交的凭据。
4、如果提供的凭据与存储的核心用户标识匹配,客户机就可以访问所请求的信息。
5、不正确的凭据将导致拒绝对LDAP数据库的访问。
请注意,存储在LDAP数据库中的核心用户标识不一定只是用户名和密码,还包括地址、电话号码和组关联等其他属性。
二、LDAP与Active Directory
https://blog.csdn.net/qinwuxian19891211/article/details/108995101
Active Directory (AD)是微软为Windows域网络开发的。在大多数Windows操作系统中,它是作为一组服务和进程包含的,并包含有关连接到网络的每个用户帐户的信息。
LDAP是用于提取和编辑存储在Active Directory和其他兼容目录服务提供者中的数据的工具。AD中的每个用户帐号都有几个属性,例如用户的全名和电子邮件地址。以可用的格式提取此信息需要LDAP。
LDAP通过一个简单的、基于字符串的查询从AD中提取信息。LDAP还可以与连接的设备或应用程序共享提取的信息(如用户名和密码)。
使用LDAP使用户无需手动输入LDAP查询字符串来从AD检索信息。例如,Microsoft Outlook是一个启用ldap的Windows程序,它自动输入查询以获取所需的信息。
三、LDAP的用途是什么?
由于LDAP是一个开放的、跨平台的协议,它可以与多个目录服务提供者一起工作,并具有各种应用程序。最常见的LDAP用例是作为存储身份验证信息(如用户名和密码)的中心位置。您可以使用存储在各种应用程序上的身份验证信息来验证用户。
支持LDAP身份验证的流行应用有OpenVPN、Docker、Jenkins、Kubernetes和Linux Samba服务器。系统管理员还使用LDAP的单点登录(SSO)特性来管理LDAP数据库访问。
四、LDAP操作类型
下面是LDAP中一些基本的操作类型:
Add添加
该特性允许您向目录-服务器数据库添加新条目。如果添加的名称已经存在,服务器将不接受该条目。相反,它将传递一个“entryAlreadyExists”通知。符合ldap的服务器将根据规定的命名标准存储添加的名称和其他属性,以确保一致性。
Bind (Authentication)绑定(认证)
通过连接LDAP服务器创建会话时,会话的默认认证状态为匿名。LDAP绑定特性验证身份验证状态并从匿名更改它。绑定可以通过Simple或SASL(简单身份验证和安全层)身份验证方法进行。
Unbind解开
取消绑定将中止未完成的操作并结束它们的连接。您可以通过关闭连接来完成同样的事情,但是最好使用unbind,因为它释放了可能仍然分配给中止操作的资源。
Modify修改
LDAP客户端使用修改特性来编辑已经存储在数据库中的信息。只有三种修改是允许的:
向数据添加新值
替换或覆盖现有值
删除现有值
Search and Compare搜索和比较
该操作允许客户端搜索和读取条目。可以根据条目的名称、大小、范围、类型和其他属性搜索条目。比较特性使得验证指定条目是否具有特定属性变得很容易。
Delete删除
客户端使用此特性从目录中删除条目。请注意,除非客户端向服务器发送一个完美组合的删除请求,否则不会发生删除。删除请求必须具备的一些特性是:
要删除的条目的名称
连接请求控制
四、LDAP目录级别
典型的LDAP配置遵循“树”层次结构格式。以下是从头到尾的层次结构:
1、起始位置—根目录
2、国家
3、组织或企业
4、部门、部门和其他组织单位
5、人员、文件和共享资源(打印机、计算机等)
您可以在多个服务器上分发LDAP目录。在复制的帮助下,来自客户端的查询分布在多个服务器上。每个LDAP服务器接收来自用户的请求,并在将请求传递给其他服务器之前负责处理这些请求。服务器将拥有目录的复制版本,并且目录将定期同步它们的条目。
五、LDAP数据组件
LDAP有几个组件协同工作,以完成它的无数任务,特别是在如何向用户查询和显示数据方面。这些组成部分中最重要的是:
1、属性
LDAP系统中的实际数据作为属性存储。每个属性都与一个属性类型相关联,该属性类型指定客户机和目录服务器应该如何与该属性交互。此外,属性值包含用户在LDAP系统中存储和访问的大部分数据。
2、条目Entries
属性定义用户或项目的特征,而条目通过在名称下列出用户或项目的所有属性来描述用户或项目。属性本身的功能是有限的。在可以充分利用属性之前,必须将属性与条目关联起来。
3、数据信息树(DIT)
在LDAP系统中,属性定义的数据仅代表对象可用信息的一部分。剩余的信息可以从条目在LDAP系统中的位置以及它的位置所建议的关系中获得。例如,如果你有一个条目是“inventoryItems”,另一个条目是“people”,在每个条目下输入的数据将更好地说明每个条目代表什么。
LDAP系统中的每个条目都被设置为数据信息树(dit)上的分支。因为LDAP树中的每个条目几乎可以代表任何东西,所以用户通常使用条目来组织内容。
4、范式
范式是一种构造,相关的ObjectClasses和属性定义在同一类别下。一个DIT可以有几个不相关的模式来生成它需要的条目和属性。
六、常见问题
6.1什么是LDAP服务器?
LDAP服务器,也称为目录系统代理(DSA),运行在Windows操作系统和Unix/Linux上。它存储用户名、密码和其他核心用户身份。它在接收请求或查询时使用此数据对用户进行身份验证,并与其他das共享请求。多个应用程序和服务可以同时连接到服务器以验证用户。
6.2LDAP如何工作?
LDAP是一个跨平台的协议,用于通过目录服务进行身份验证。它还提供了应用程序用于连接到其他目录服务服务器的通信语言。这些目录服务包含用户名、密码和计算机帐户,并在请求时向网络上的用户提供这些信息。
将LDAP想象成一个巨大的虚拟电话簿。打开电话簿,您可以访问各种人的联系信息的大目录,包括他们的用户名和密码。使用LDAP,当用户试图访问组织的数据库时,您可以很容易地验证他们的凭据。
6.3什么是LDAP帐户?
LDAP Account是一个在线应用程序,用于管理存储在LDAP目录中的不同类型的帐户。该帐户为用户提供了一个目录的抽象视图,这使得不懂技术的人很容易管理LDAP数据。
6.4LDAP和Active Directory的区别是什么?
AD (Active Directory)是目录服务数据库,用于存储组织的数据、认证和策略。LDAP是与AD通信的协议。
总之,AD可以与LDAP一起工作,将这两个应用程序结合起来可以改进访问管理。
6.5LDAP安全吗?
LDAP身份验证通过内置的访问管理层提供了标准的安全性。在Active Directory和客户端之间的数据传输过程中,恶意的参与者仍然可能进行窃听。通过在LDAP认证过程中添加SSL/TLS加密来优化安全性,通过加密通信减少认证过程中传输的信息易受攻击。
LDAP认证使用的默认端口(389端口)没有自身的安全性。通过添加安全扩展(如LDAPv3 TLS扩展或StartTLS模式)来创建安全连接。
6.6如何在LDAP中进行查询?
LDAP查询有助于在Active Directory中搜索计算机、用户、组和其他对象。LDAP通过一个简单的基于字符串的查询从AD中提取信息。您还可以使用实用程序,如ldapsearch、PowerShell或VBS脚本来执行查询。
6.7SAML vs LDAP
LDAP和SAML都是帮助应用程序访问IT资源的身份验证协议。SAML将用户信息发送给你的身份提供者和其他在线应用程序,而LDAP促进on-prem认证和其他服务器进程。
大多数组织结合使用SAML、LDAP和其他身份验证协议来访问各种类型的IT资源并实现其业务目标。
6.8Kerberos和LDAP
Kerberos是用于安全管理凭证的单点登录和身份验证协议。它允许进程连接到身份验证服务器,并为访问文件、应用程序和其他资源提供经过签名和加密的票据。
而LDAP则可以方便地访问OpenLDAP、Active Directory等目录。它通过交叉检查LDAP目录中存储的用户名和密码来验证连接。由于Kerberos比LDAP更安全,而且LDAP比Kerberos具有更多的功能,所以大多数组织都使用这两种协议。
网友评论