跳转到主要内容

Plone的LDAP/Active Directory支持

项目描述

简介

PloneLDAP产品旨在使在Plone网站上使用LDAP连接变得更容易。它基于优秀的LDAPMultiPluginsLDAPUserFolder产品,这些产品提供了基本的LDAP基础设施。

对于Plone 3.3或更高版本,我们建议使用plone.app.ldap,以获得使用Plone访问LDAP更友好的用户界面。这使用了PloneLDAP

该产品提供的额外功能需要超出标准可插拔认证服务之外的功能,这就是为什么它们不包括在LDAPMultiPlugins中的原因。

PloneLDAP完全集成了LDAP到您的Plone站点

  • LDAP数据库中的用户可以像普通用户一样在Plone中使用。您可以搜索他们、分配角色、创建他们和删除他们。

  • LDAP数据库中的组可以像普通组一样在Plone中使用。您可以查看它们、管理组成员、创建新组并删除它们。LDAP组只能有LDAP用户作为成员。LDAP用户可以是非LDAP组的组成员。

  • LDAP用户的成员属性不必完全存储在LDAP数据库中:您可以混合LDAP和ZODB存储的属性。

活动目录

请注意,如果您正在使用活动目录(AD),则所有访问都是只读的。例如,您不能将AD用户添加到AD组。

需求

  • Plone 3.0或更高版本

  • python-ldap

  • LDAPUserFolder 2.8或更高版本

  • LDAPMultiPlugins 1.5或更高版本

Products.PloneLDAP依赖于LDAPMultiPlugins和LDAPUserFolder,因此它们将被自动安装。

记录在案,它已与这些最新版本进行了测试

Plone = 4.2.2
Products.LDAPMultiPlugins = 1.14
Products.LDAPUserFolder = 2.24
dataflake.fakeldap = 1.1
python-ldap = 2.4.10

安装

首先,您需要安装python-ldap包。安装完成后,您需要将Products.PloneLDAP egg添加到您的Plone实例中。如果您使用buildout,只需将Products.PloneLDAP添加到所需egg列表中。否则,您需要使用easy_install。有关安装第三方包的更多信息,请参阅plone.org上的文档。

不要从Plone站点设置屏幕安装LDAPUserFolder。这将破坏您的Plone站点。

PloneLDAP提供PAS插件,您可以使用它们使您的站点与LDAP或Active Directory通信。要安装它们,请转到您站点的acl_users文件夹。从右上角的下拉菜单中选择正确的插件:如果您想连接到标准LDAP服务器,请使用“Plone LDAP插件”;如果您想连接到Microsoft Active Directory服务器,请使用“Plone Active Directory插件”。

选择插件类型后,您将看到一个需要提交配置信息的屏幕。如果您不确定正确的信息是什么,请咨询您的LDAP或AD管理员。

创建插件后,必须激活它。为此,请转到ZMI中的插件,转到“导航”选项卡,选择所有插件类型,然后单击“更新”按钮。

作为最后的更改,您需要重新排序插件顺序。可以通过单击插件类型的名称,从“活动插件”列表中选择一个插件,并使用上下箭头更改排序来实现排序。所需的排序更改如下

  • 属性:LDAP必须是顶级插件

  • 组管理:如果您想在LDAP数据库中创建组,则LDAP应该是顶级插件

  • 用户添加器:如果您想在LDAP中创建新用户,则必须是顶级插件

  • 用户管理:LDAP必须是顶级插件

LDAP注意事项

LDAPUserFolder

在PloneLDAP PAS插件内部,您将看到另一个acl_users用户文件夹。这是一个“LDAPUserFolder”实例,用于管理与LDAP服务器之间的底层通信。通过更新其属性,您可以重新配置您的LDAP连接。

LDAPUserFolder实例仅用于与LDAP服务器通信。其用户和组管理功能未被使用。您可以使用它来快速测试您的LDAP连接是否正确配置。

如果您通过LDAPUserFolder ZMI接口对用户或组进行任何更改,这些更改将应用到LDAP服务器,但PloneLDAP插件使用的缓存不会正确失效。这可能导致意外的结果,并且强烈建议只使用Plone界面来更新用户和组。

致谢

资金

中心点

实施

Simplon,Wichert Akkerman

变更

1.2 (2012-11-30)

  • 只有LDAP插件实现了IGroupManagement接口,ActiveDirectory插件没有。这是用于添加、删除和编辑组。

  • 代码已移动到https://github.com/collective/Products.PloneLDAP

  • 仅允许LDAP多插件实现IGroupCapability接口(向组添加用户或从组中删除用户)。以前AD多插件也声称实现了这一点,但它缺少所需的方法,因此可能导致跟踪回溯。我们本可以通过混合类添加这些方法,但在我尝试在AD配置中这样做时,这导致了其他跟踪回溯(在removePrincipalFromGroup中)。

  • 修复setProperties以将值拆分为行,如果lines属性接收字符串而不是可迭代对象。

  • 当创建Active Directory插件时,配置LDAPUserFolder以忽略禁用或非用户帐户。这需要Products.LDAPUserFolder 2.11或更高版本。

1.1 (2008-06-10)

  • 将许可证切换到ZPL。

  • 依赖Products.LDAPMultiPlugins和Products.LDAPUserFolder。

  • 从此仅使用egg-only版本。

1.0

  • 由于安装它将杀死您的Plone网站,因此从列表中隐藏LDAPUserFolder作为附加产品。仅限Plone 3.0。

  • 修复doDeleteUser的不正确安全声明

1.0rc3

  • 修复getGroupMembers以返回用户ID而不是登录名作为组成员。这破坏了环境中的组成员列表,其中用户ID和登录名不同(例如AD环境)。感谢Netcentric发现此问题并帮助我修复它。

  • 添加一些针对与组相关的搜索无效(None)结果的保护。

  • 添加更多关于在Plone中使用LDAP的功能和注意事项的信息。

1.0rc2

  • 改进文档。

  • 添加缺失的角色管理和用户删除的缓存无效化。

  • 修复更新单值成员属性。

  • 使用不同的方法获取包含LDAPUserFolder。这允许在CMF站点之外使用PloneLDAP。

1.0rc1

  • 修复创建新插件实例时设置对象类的问题。

  • 修复成员属性表:RAM缓存不喜欢尝试存储不可序列化数据。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

Products.PloneLDAP-1.2.zip (40.9 kB 查看散列)

上传时间

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面