[Product-Developers] Techniques for building an Active Directory person directory
djay at pretaweb.com
Mon Feb 15 00:34:05 UTC 2010
PloneLDAP already pulls out any user or group properties you've
Dylan Jay, Plone Solutions Manager
On 15/02/2010, at 11:07 AM, Dan Jacka wrote:
> I'm building a person directory in my Plone 3.3 intranet. The
> directory must:
> - source people from Active Directory;
> - source places from Active Directory;
> - allow additional people or places to be added in Plone, without a
> corresponding AD entry;
> - allow a set of additional properties to be set per person/place in
> - allow grouping of people or places into organisational units.
> Tall order huh? I'm thinking I'll tackle it this way:
> - FacultyStaffDirectory is a great start. It'll provide the basic
> directory framework, plus the grouping mechanism via
> - I'll define interfaces IPerson and IPlace, detailing the fields of
> a complete person/place. I'll change FSD to find and display objects
> providing those interfaces.
> - Every IPerson/IPlace will be made up of either:
> - AD-sourced data plus additional Plone data,
> - An Archetypes object plus additional Plone data.
> - The 'additional Plone data' will come from Zope 3 annotations.
> With annotations I can have the same set of additional data on any
> IPerson/IPlace object. I'll need a UI for editing the annotations.
> - I'm using PloneLDAP for authentication, so I already have a
> connection to AD. I'll write adapters to IPerson/IPlace that use the
> connection to pull out required data.
> - I'll add Person and Place content types to FacultyStaffDirectory
> based on FSD's Person type. Priveleged users can manually add a
> person/place to the directory by adding an object of the right type.
> This all looks very challenging to get right. I've hunted around for
> any products that can help, including membrane,
> archetypes.ldapstorage, betahaus.memberprofile, ATMemberInfo, etc.
> Although their code will doubtless be useful, none of them gets
> close enough to my use case.
> My approach is still very high level at the moment. I have a few
> questions for the list before I dive fully into designing this:
> - Is there a third party product I've missed that will do all this
> for me? :-)
> - Does my approach seem sane?
> - What would you do differently?
> Any pointers in the right direction would be very much appreciated.
> Thank you,
> Product-Developers mailing list
> Product-Developers at lists.plone.org
More information about the Product-Developers