【发布时间】:2009-03-19 18:18:27
【问题描述】:
LDAP 和 Active Directory 有什么区别?
【问题讨论】:
标签: active-directory ldap
LDAP 和 Active Directory 有什么区别?
【问题讨论】:
标签: active-directory ldap
Active Directory 是一个基于数据库的系统,在 Windows 环境中提供身份验证、目录、策略和其他服务
LDAP(轻量级目录访问协议)是一种应用协议,用于查询和修改目录服务提供商(如 Active Directory)中的项目,它支持一种 LDAP 形式。
简答:AD 是一个目录服务数据库,LDAP 是您可以用来与之对话的协议之一。
【讨论】:
LDAP 是一种标准,AD 是 Microsoft 的(专有)实现(以及更多)。 Wikipedia 有一篇深入研究细节的好文章。我发现 this document 从 LDAP 的角度对 AD 进行了非常详细的评估。
【讨论】:
轻量级目录访问协议或 LDAP,是一种基于标准的与目录数据交互的规范。目录服务可以实现对 LDAP 的支持,以提供 3rd 方应用程序之间的互操作性。
Active Directory 是 Microsoft 实施的目录服务,除其他协议外,它还支持 LDAP 查询其数据。
虽然它支持 LDAP,但 Active Directory 提供了许多扩展和便利,例如密码过期和帐户锁定。
【讨论】:
简短摘要
Active Directory是微软实现的目录服务,支持Lightweight Directory Access Protocol(LDAP)。
长答案
首先,需要知道Directory Service 是什么。
目录服务是一种软件系统,用于存储、组织和提供对计算机操作系统目录中信息的访问。在软件工程中,目录是名称和值之间的映射。它允许查找命名值,类似于字典。
更多详情,请阅读https://en.wikipedia.org/wiki/Directory_service
其次,可以想象,不同的供应商实现了各种形式的目录服务,这不利于多供应商的互操作性。
第三,因此在 1980 年代,ITU 和 ISO 提出了一套标准 - X.500,用于目录服务,最初是为了支持运营商间电子消息传递和网络名称查找的要求。
第四,基于该标准,开发了轻量级目录访问协议LDAP。它使用 TCP/IP 堆栈和 X.500 目录访问协议 (DAP) 的字符串编码方案,使其在 Internet 上更具相关性。
最后,基于此 LDAP/X.500 堆栈,Microsoft 为 Windows 实施了现代目录服务,源自 X.500 目录,创建用于 Exchange Server。而这个实现被称为Active Directory。
简单来说,Active Directory 是微软实现的目录服务,它支持Lightweight Directory Access Protocol (LDAP)。
PS[0]:这个答案大量复制了上面列出的维基百科页面的内容。
PS[1]:要了解为什么最好使用目录服务而不是仅使用关系数据库,请阅读https://en.wikipedia.org/wiki/Directory_service#Comparison_with_relational_databases
【讨论】:
Active Directory 不仅仅是 Microsoft 的 LDAP 实现,它只是 AD 的一小部分。 Active Directory 是(以一种过于简化的方式)提供基于 LDAP 的身份验证和基于 Kerberos 的授权的服务。
当然,他们在 AD 中的 LDAP 和 Kerberos 实现与其他 LDAP/Kerberos 实现并非完全 100% 可互操作...
【讨论】:
Active Directory 是一个目录服务提供商,您可以在其中向目录添加新用户、删除或修改、指定权限、分配策略等。它就像一个电话目录,每个人都有一个唯一的联系号码。 AD(Active Directory) 中的每一件事都被视为对象,并且每个对象都被赋予一个唯一 ID。(类似于电话目录中的唯一联系人号码。
Ldap 是专为目录服务提供商设计的协议。 Windows 服务器操作系统使用 AD 作为目录服务器,IBM 的 UNIX 版本的 AIX 使用 Tivoli 目录服务器。它们都使用 LDAP 协议与目录交互。
除了协议,还有 LDAP 服务器,还有 LDAP 浏览器。
【讨论】:
active directory 是目录服务数据库,用于存储基于组织的数据、策略、身份验证等,而 ldap 是用于与 ad 或 adam 目录服务数据库通信的协议。
【讨论】:
LDAP 位于 TCP/IP 堆栈之上并控制 Internet 目录访问。它与环境无关。
AD & ADSI 是围绕 LDAP 层的 COM 包装器,并且是特定于 Windows 的。
可以看微软的解释 here.
【讨论】:
https://jumpcloud.com/blog/difference-between-ldap-and-active-directory/
实际上,这两种目录解决方案之间的差异可能多于相似之处。微软的 AD 在很大程度上是一个 Windows 用户、设备和应用程序的目录。 AD 需要存在 Microsoft 域控制器,如果存在,用户可以单点登录到域结构中的 Windows 资源。
另一方面,LDAP 主要在 Windows 结构之外工作,专注于 Linux / Unix 环境和更多技术应用程序。 LDAP 没有相同的域或单点登录概念。 LDAP 主要通过开源解决方案实现,因此比 AD 具有更大的灵活性。
LDAP 和 Active Directory 之间的另一个关键区别是 AD 和 LDAP 各自处理设备管理的方式。 AD 通过组策略对象 (GPO) 管理 Windows 设备。 LDAP 中不存在类似的概念。 LDAP 和 AD 都是非常不同的解决方案,因此许多组织必须利用这两者来服务于不同的目的。
这就是为什么有明显的创新机会。为什么要利用和管理两个完整的系统,而一个系统可以有效地合并两者?
【讨论】:
有很多系统支持 LDAP 与它们通信,而不仅仅是 Active Directory。
Sun、IBM、Novell 都有非常有效的目录服务作为 LDAP 服务器。
【讨论】:
Active Directory 是 LDAP 协议的超集。根据组织使用 Active Directory 的方式,您的 LDAP 搜索/设置查询可能有效,也可能无效。
【讨论】: