Plone的LDAP/Active Directory支持
项目描述
简介
PloneLDAP产品旨在使在Plone网站上使用LDAP连接变得更容易。它基于优秀的LDAPMultiPlugins和LDAPUserFolder产品,这些产品提供了基本的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或更高版本
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界面来更新用户和组。
致谢
版权
PloneLDAP版权所有2007,2008由Simplon拥有,并许可在Zope公共许可证,版本2.1下使用。
变更
1.2 (2012-11-30)
只有LDAP插件实现了IGroupManagement接口,ActiveDirectory插件没有。这是用于添加、删除和编辑组。
仅允许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的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 7cddeb9275e95b81cb8c77aab9ed3b6c7f81fe92cb6894b19a7f1d5fcf849939 |
|
MD5 | 46caa70e6676e7b4665deb0e20452d97 |
|
BLAKE2b-256 | ec061efbe89f273918a4e16a6531ac85de83f16c3a044e69dde68776ee6fc0e0 |