Notes for developers of ldapconfig

by Maurits van Rees last modified Dec 30, 2008 05:55 PM
Here are some pointers for developers wanting to contribute to this product.

ldapconfig on plone.org
^^^^^^^^^^^^^^^^^^^^^^^

ldapconfig has a `product page`_ on plone.org. Most of the text there
comes from the documentation here on the file system.
reStructuredText is used for that. So if you want to update some text
on the product page, please change it in the subversion code first and
then upload the changed text.

.. _`product page`: http://plone.org/products/ldapconfig


Online documentation
^^^^^^^^^^^^^^^^^^^^

* `Howto`_: Plone 2.5 and OpenLDAP Integration for Users and Groups

* `User experience`_: Getting Plone 2.5 / PlonePAS working with LDAP

.. _`Howto`: http://plone.org/documentation/how-to/plone-2-5-and-openldap-integration-for-users-and-groups
.. _`User experience`: http://www2.le.ac.uk/Members/nd51/blog-rdf-pkb-9jd/blogentry.2006-06-22.7848776335


What is being done in this product?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

We want to get Plone and LDAP to communicate nicely together. The
following actions are needed then.

* Add our LDAP server to PlonePAS with an LDAPMultiPlugin.

* Tell PlonePAS which interfaces we want to activate. In other words:
do we want to use LDAP only for authentication or also for adding
users, managing groups, etcetera. Actually, at this point we
activate them all; later we can switch some off.

* Move our LDAP plugin to the front of the list for a few interfaces
where we want LDAP to be the first plugin that is consulted.


Ideas for the future
^^^^^^^^^^^^^^^^^^^^

It is a hassle to checkout LDAPMultiPlugins and apply the patch. It
would be far easier if we could just add that patch to this ldapconfig
product and apply it on the fly. We can do that via monkey patching
or better via the patching technique used in for instance the
CacheSetup product. If that works, then we can simply instruct users
to download LDAPMultiPlugins and ldapconfig, install them and they are
ready.

Maybe even better: create a PloneLDAPMultiPlugins product (or put that
somewhere in ldapconfig) that simply inherits from LDAPMultiPlugins
and takes care of all this.