- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这两种 LDAP 协议(protocol)实现之间的主要区别是什么?异构环境哪个更好?关于这个主题有什么好的网站吗?
最佳答案
以下是我立即知道的一些差异。 OpenLDAP 可以称为通用 LDAP 服务器,类似于许多其他供应商的 LDAP 服务器(Fedora DS 389、Oracle Internet Directory、IBM Tivoli Directory Server)。 Active Directory 针对 Microsoft 产品套件进行了更多定制(即:运行 Microsoft 域)。各有利弊。
OpenLDAP 在安装后是空的并且没有结构(称为 DIT)。它甚至没有开箱即用的根条目。 AD 将附带一个基本结构,并准备好 GUI 工具供您开始填充用户。 OpenLDAP 和其他人希望您手动创建 DIT,因此您必须设计一个结构。因此,您必须计划将用户、组、角色放置在何处,并考虑 ACL 或分支委派(如果您的项目涉及此类内容)。例如,您可能有一个 widgets.com 域。在 AD 中,交付的结构将如下所示:
+ dc=widgets,dc=com
|-- cn=Computers
|-- cn=Users
|-- cn=Groups
在 OpenLDAP(或其他普通实现)中,您可以通过多种方式设计 DIT。您可以遵循域组件 (dc=foo,dc=bar) 约定,也可以使用按地理区域组织的内容 (o=foo,c=bar)。这并不重要,但您应该选择其中之一。 AD 使用 DC 约定,并且不给您选择,但其他 LDAP 服务器可以遵循任一约定。如果您想融入大型 MS 领域,我会坚持使用 DC 约定,以实现一致性和易于集成。但在本例中,我们假设我们的公司组织 (o) 位于一个国家 (c),没有任何地区或单位 (ou):
+ o=widgets,c=us
|-- cn=Machines
|-- cn=People
|-- cn=Groups
|-- cn=Roles
然后您可以根据需要扩展您的架构。如果您想扩展 AD 架构,AD 将要求您通过 Active Directory 架构编辑器 MMC 控制台插件(创建自定义 MMC)添加架构元素。之后,就非常简单了。首先定义属性,然后定义对象类。 OpenLDAP 要求您编写 LDIF(还需要首先是属性,然后是对象类)。或者将 Apache Directory Studio 与 OpenLDAP 结合使用,这是一个很棒的 GUI 和管理工具,使 OpenLDAP 具有接近 AD 的易用性。
AD 不允许您匿名查询 389 上的所有内容。如果您想获取架构信息(称为目录),您必须在 3289 上查询并进行身份验证。这让我想起 LDAP 的 DIB 与 DIT 隐藏,但我不知道 AD 是否试图在这里做同样的事情。
AD 的默认查询限制为 1,000 ( default MaxPageSize )。如果您想一次性吸收所有内容,则必须在客户端或代码中使用分页控件,或者修改您正在搜索的域 Controller 上的默认查询限制。请注意,分页控件可能会出现问题。我已经使用 Netscape 库让它们在 Java 中工作,但一些 LDAP 客户端似乎无法正常工作,即使它们声称支持分页控件 (YMMV)。
AD的认证有点奇怪。您可以使用电子邮件格式的用户名 (-D username@domain) 进行身份验证,也可以使用完整的用户 DN。如果 OpenLDAP 有办法做到这一点,我不知道该怎么做,但我不会打扰。与其他 LDAP 服务器相比,这很奇怪。普通 LDAP 通常遵循 DN 格式 (cn=username,cn=Users,o=widgets,c=us)。
我想简而言之,AD 是固执己见的,而 OpenLDAP 是通用的。正因为如此,AD很容易站起来,而OpenLDAP可以更灵活。
关于active-directory - 事件目录与 OpenLDAP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/997424/
这是我第一次使用 LDAP。我已经在 ubuntu 机器上设置了一个 openldap,并在远程系统上设置了一个 ldap 浏览器(phpldapadmin)。我正在尝试向 cn=config 添加两
是否可以在 openldap 中为架构属性类型添加别名?任何人都可以提供命令行指令来完成此操作吗? 例如, Description RFC2256: Telephone Number OID 2.5.
我尝试在 OpenLDAP 中激活 ppolicy 模块。 OS Version : Debian 8.4 LDAP Version: @(#) $OpenLDAP: slapd (J
实际上基于http://www.openldap.org/doc/admin24/slapdconf2.html说我可以将 slapd.conf 转换为 cn=config 格式。 为此,我尝试在服务
我有一台运行 OpenLDAP 2.4 的 Linux 服务器,它使用 cn=config 设置而不是 slapd.conf 文件。服务器当前不支持 LDAPv2 连接,仅支持 v3,所以我尝试将 o
首先我将简要解释我的架构 Openldap 服务器:安装了 openldap 的 Ubuntu 14.04 计算机。我关注了这篇文章 https://www.digitalocean.com/comm
我在 openldap 2.4.35 上使用 berkeleydb 5.0.32.NC 从源 tarball 安装了 CentSO 6.4 x86_64 。 运行几天后,ldap 服务器意外关闭。这是
我从SourceForge下载了Windows的OpenLDAP(2.4.43 x86),安装程序要求输入序列号: 据我所知,没有这样的东西吗? 我尝试输入任何内容,但是下一个按钮将不允许我继续前进
我正在使用openldap 1.2.2和php 5.5,这是我得到的错误。我对这些事情并不熟悉,我正在关注tutorial。 Error trying to get a non-existent va
我尝试向 ldap 添加新条目,但我不知道为什么它不起作用。 我有 addPeople.ldif 文件: dn: ou=People,dc=example,dc=com,dc=au ou: peopl
我正在考虑使用 OpenLDAP 在首次登录时添加密码到期和强制更改密码。 似乎使用 ppolicy 覆盖来实现这一点。 当我在 ppolicy.schema 中看到这个时,我开始使用 ppolicy
首先,我几乎是这个领域的初学者。 我应该为我们在公司内部使用的多个网站(使用共享的 openLDAP 用户和密码数据)找到一个真正的单点登录解决方案。意思是:您登录一次并连接到所有假定的站点,而不必一
我有一个 LDAP 服务器,它管理来自多个应用程序(Web 和桌面)的唯一访问点的用户。现在我需要在 OU(组织单位)中导入超过 200k 的条目,并且这个数字甚至增长。我的问题是:有关于 ldap
我尝试使用 OpenLDAP 2.4.31 和标准架构创建电话簿。 插入包含哈希 (#) 或星号 (*) 的数字将不起作用,并会返回语法错误。 RFC 告诉我数字如下:可打印字符串(字母、数字、'、(
我有一个 LDAP 服务器,它管理来自多个应用程序(Web 和桌面)的唯一访问点的用户。现在我需要在 OU(组织单位)中导入超过 200k 的条目,并且这个数字甚至增长。我的问题是:有关于 ldap
我正在编写一个 OpenLdap Controller ,其中有很多 ldap 函数。其中一个功能是获取一个 LdapUser 及其不同的属性。 例如: NamingEnumeration e
我正在尝试使用 OpenLDAP 密码策略进行身份验证。 我已使用以下内容设置我的策略: dn: cn=passwordDefault,ou=Policies,dc=company,dc=com ob
我在一台服务器上安装了 OpenLDAP,其中有 2 个独立的网卡连接到 LDAP 服务器。如果我拔下 nic1 电缆,我无法让 LDAP 通过 nic2 进行身份验证。有没有办法让 nic2 使用
我目前正在通过命令行执行 openldap。我添加了用户 John 并添加了组 devgroup,并将 John 分配到 devgroup 组。当我通过命令行删除用户(John) ldapdelete
在以下情况下我需要指导 -我正在将 RHDS 迁移到 openLDAP。我设法转换了 DIT 及其属性和模式。但是,我停留在访问控制。 在RHDS中,目前,访问控制如下- dn: dc=example
我是一名优秀的程序员,十分优秀!