<?xml version="1.0" encoding="UTF-8" ?>
<rdf:RDF xmlns="http://usefulinc.com/ns/doap#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><Project><name>Products.LDAPMultiPlugins</name>
<shortdesc>LDAP-backed plugins for the Zope2 PluggableAuthService</shortdesc>
<description>===========================
 Products.LDAPMultiPlugins
===========================

.. contents::

The LDAPMultiPlugins provides PluggableAuthService plugins that use LDAP as 
the backend for the services they provide. The PluggableAuthService is a 
Zope user folder product that can be extended in modular fashion using 
various plugins. See DEPENDENCIES.txt for software needed by this package.

Please make sure to read the documentation included in the LDAPUserFolder 
package as well.


Bug tracker
===========

Please post questions, bug reports or feature requests to the bug tracker
at http://www.dataflake.org/tracker/

SVN version
===========

You can retrieve the latest code from Subversion using setuptools or
zc.buildout via this URL:

http://svn.dataflake.org/svn/Products.LDAPMultiPlugins/trunk#egg=Products.LDAPMultiPlugins


Caching
=======

The results of some calls into the plugins provided by these package can be 
cached using the Zope ZCacheable mechanism:

- In the Zope Management Interface (ZMI) of your PluggableAuthService
  instance, select 'RAM Cache Manager' from the dropdown, give it an ID
  and configure it according to your needs.

- Click on your LDAP/ActiveDirectoryMultiPlugin and use the 'Cache' 
  ZMI tab on the far right to associate the newly created RAM Cache
  Manager object with the plugin.

Now your plugin will use the RAM Cache Manager object to cache results from 
some of the possibly expensive API calls.


Special features - Active Directory Multi Plugin
================================================

Properties of the ADMultiPlugin instance:

- groupid_attr - the LDAP attribute used for group ids.

- grouptitle_attr - the LDAP attribute used to compose group titles.

- group_class - the LDAP class of group objects.

- group_recurse - boolean indicating whether to determine group
  memberships of a user by unrolling nested group relationships
  (expensive). This feature is not guaranteed to work at this moment.


Active Directory configuration hints
====================================

In order for groups support to work correctly, you may have to set the
following properties. Every situation is different, but this has helped
some people succeed:

- On the "Properties" tab for the ActiveDirectoryMultiPlugin, set the
  groupid_attr property to "name".

- On the contained LDAPUserFolder's "Configure" tab, choose a 
  property other than "objectGUID", e.g. "sAMAccountName" for the
  User ID property. To get to the LDAPUserFolder, click on the
  ActiveDirectoryMultiPlugin "Content" tab.

Please see README.ActiveDirectory from the LDAPUserFolder package for
additional information.


------------------------------------------------------------

Changelog for Products.LDAPMultiplugins
=======================================

To see earlier changes please see HISTORY.txt.

1.8 (2009-02-17)
----------------

- Bug: Move plugin registration from initialize method to module level to
  avoid multiple registrations.
  (http://www.dataflake.org/tracker/issue_00631 by Ramon Navarro Bosch)

- Feature: Implemented GenericSetup import/export handlers and registered
  import/export steps.

- Bug: Fixed the Zope dependency, which was listed as 2.8+. It's 2.9+.


1.7 (2008-07-19)
----------------

- Bug: LDAPMultiPlugin.enumerateUsers: The variable used as key for the
  caching mechanism was mutated after being computed, leading to cache
  keys that can never be found again. Found by Wichert Akkerman.
  (http://www.dataflake.org/tracker/issue_00613)


1.6 (2008-06-05)
----------------

- Bug: ActiveDirectoryMultiPlugin.enumerateGroups: In order to support
  group searches on the binary objectGUID attribute, utilize a new
  flag exposed by the LDAPUserFolder LDAPDelegate search method
  that prevents the customary UTF8-encoding of the search filter
  expression. **NOTE**: With this change the LDAPUserFolder version
  dependency changes to version 2.9 or higher!
  (http://www.dataflake.org/tracker/issue_00576 by Wichert Akkerman)

- Bug: ActiveDirectoryMultiPlugin.enumerateGroups: If the requested group
  id is a binary string, like a objectGUID attribute, it was mangled
  by a lowercasing operation. Removed the lowercasing.
  (http://www.dataflake.org/tracker/issue_00575 by Wichert Akkerman)

- Feature: Added caching to the getGroupsForPrincipal method. Thanks to 
  Wichert Akkerman for the patch.
  (http://www.dataflake.org/tracker/issue_00571)


1.5 (2007-06-13)
----------------

- Bug: The product will no longer silently fail to install if the 
  LDAPUserFolder package is not installed. Silent failure does
  not look like a good strategy here.

- Bug: fixes and import cleanups after running Pyflakes
  (http://divmod.org:81/svn/Divmod/trunk/Pyflakes/)

- Documentation: added some additional configuration hints to the README, 
  thanks go to Brett Lentz (http://www.dataflake.org/tracker/issue_00559)


------------------------------------------------------------

Download
========</description>
<homepage rdf:resource="http://pypi.python.org/pypi/Products.LDAPMultiPlugins" />
<maintainer><foaf:Person><foaf:name>Jens Vagelpohl and contributors</foaf:name>
<foaf:mbox_sha1sum>0dba4db5a4c2100699b6de8591820716fb57cd46</foaf:mbox_sha1sum></foaf:Person></maintainer>
<release><Version><revision>1.8</revision></Version></release>
</Project></rdf:RDF>