Some LDAP musings
Howard Butler
hobu at hobu.net
Sun Oct 29 14:07:19 EST 2006
All,
I spent some time looking at an OpenLDAP implementation for us at
TelaScience. Frank reminded me that our new admin would be taking on
LDAP duties once he/she comes online in early November. I'm posting
this as some notes to that person and a description of the things we
would probably want.
Ideally, our LDAP would be very simple, a user would only be created
one time, and permissions would be mostly determined by group
membership. The LDAP should avoid creating custom object types/
schemas if at all possible, and be implemented in OpenLDAP to provide
the greatest opportunity for an LDAP initiate to familiarize
themselves with the software and get things done if they needed to.
At TelaScience, we were running Fedora Directory Server as a stop-gap
for serving LDAP for the TelaScience systems. It had a few problems
for us. First, it wasn't that user friendly, and the only way we
could figure out how to create a user in the system was through the
GUI (and through me). This created a major choke point, and limited
any development to myself. Second, it had a non-standard schema, so
client applications expecting to utilize it for authentication and
authorization needed to either have support for FDS, be modified, or
be forgotten about.
Here is a listing of some LDAP-enabled applications we might want to
run for supporting OSGeo operations:
- Apache (for SVN access mostly, but maybe for other items like a
project-specific portion of a website)
- Unix shell logins, group permissions, VNC access, sudo privileges
(solaris, linux, and maybe others)
- Content management system authentication/authorization
- Database (postgresql, etc) users and groups
- maillist/mailmain integration?
- others
<http://wiki.osgeo.org/index.php/Proposed_LDAP_Layout> has a link to
an ldif and a picture of some of the stuff I prototyped. I created
three major areas, and a structure that closely follows OSGeo's
organizational structure. "Projects" contains the major projects of
OSGeo, including things like GeoData, and each DN contains the
members of each respective project. "SVN" follows almost exactly,
but with membership numbers much less than the groups within
Projects. "Shell" is a groupOfNames that contains those members with
unix login ability (this is used by PAM's pam_groupdn flag in
ldap.conf on *nix systems). "People" contains the posixAccounts that
define everybody, and finally, "Posix-Groups" contain posixGroup
definitions for groups that would be used at the system level for
defining ownership permissions, etc.
If any other LDAP'ers out there have some ideas or some thinking
about codifying our organizational structure in our LDAP, please let
me know.
Howard
More information about the Sac
mailing list