ldap 是标准 tcp/ip 堆栈协议,用于存储和查询分层目录中的信息。它是 x.500 目录服务协议的替代方案,后者更占用资源。 ldap 通常用于 sso 身份验证和存储。按照标准,ldap 使用 tcp 端口 389 进行未加密通信,并通过加密通道使用 tls 端口 636。
ldap 是如何工作的?
- 客户端通过专用 tcp 端口启动 ldap 会话。
- (可选)读取和修改会话选项值。
- 建立与 ldap 服务器的连接,或使用绑定函数之一通过特权身份验证客户端显式绑定到服务器。
- 向电子邮件服务器提交查询或建立与打印机的连接。服务器接收查询并返回相应信息给用户。
- 完成后,关闭与 ldap 服务器的连接。
与大多数现代基于 http 的协议不同,ldap 使用持久连接,在与目录服务器通信时可以存活数天。
使用 ldap 的优点
- 这是一个不断发展的成熟协议。它是大多数大型企业的关键组成部分,因此需要维护协议的修订和更新标准。
- ldap 是 x.500 协议的轻量级版本,但与其他现代协议相比也非常轻量级。
- ldap 很安全,通常用于存储用户名、密码和其他敏感信息。但其安全性取决于其实施。采用此协议时遵循最佳实践非常重要,例如:
- 建立访问控制策略。
- 维护目录数据的多个副本。
- 加密密码等敏感信息。
ldap 的组件
属性:ldap 系统中的数据存储在称为属性的键值对中。您可以通过使用冒号和空格分隔名称和值来设置属性值。例如
邮件:johndoe@gmail.com
使用等号来引用属性及其数据而不设置它。例如
mail=johndoe@gmail.com
最常用的属性包括:
- ou:组织单位
- _ dn_:专有名称
- cn:常用名
- 描述
- dc:域组件
- givenname:名字
- 邮件:电子邮件地址
- sn:姓氏
条目:条目是与某事物关联或描述某事物的属性的集合。条目可以是系统中的用户。将其视为关系数据库中的一行。每个条目包含:
- 专有名称(唯一标识 dit 层次结构中的特定条目
- 属性集合(它们保存条目的数据)
- 对象类的集合(它们指示条目代表什么类型的对象,例如有关设备或人员的信息)
dn: ou=Users,dc=example,dc=com,uid=jd001 objectClass: EntUsers cn: Jane Doe sn: Doe mail: jdoe@example.com uid: jd001
搜索过滤器:用于定义识别包含某些类型信息的条目的条件。
ldap urls:此 url 包含可以引用目录服务器或搜索条件的不同信息。
ldap的主要操作员
- 添加:在目录中插入新条目。
- 修改:更改现有目录条目。
- 绑定:验证 ldap 客户端并将其连接到服务器。
- 删除:删除目录条目。
ldap 由 microsoft 的 active directory 和其他目录服务器(例如 openldap 和 red hat directory server)使用。要在企业内部设置ldap,您需要目录服务器、具有不同权限的用户、可查询的目录数据和ldap客户端应用程序。
-
以上就是LDAP(轻量级目录访问协议的详细内容,更多请关注php中文网其它相关文章!