These are the first draft of LDAP schema attributes for drizzle to do MySQL authentication.  Additional attributes needed to be added for MySQL authentication because of the way MySQL does authentication.


Explanation of schema

Objectclass: drizzleUser
    This is used to identify a user can be used for drizzle authentication module.  This object class can have drizzleUserMysqlPassword attribute. Search filter should be "(objectclass=drizzleUser)".


Attribute: drizzleUserMysqlPassword
    Used to store the MySQL sha1(sha1) hash of the users password, it is required that the LDAP object have the drizzleUser objectclass.  Also this attribute must be readable by the user that drizzle is using to access the LDAP server.  Unfortunately the way that MySQL authentication is written the password hash has to be readable by the server.


Schema and ldif files are located in the server specific directories. 

gentestusers.sh:

    This is a script to quickly generate users for testing the drizzle mysql ldap authentication module.  Note this is not the de facto way of doing things more of just a quick start example.

./gentestusers.sh -h 
    This will output help on how to use the file.

Example:
./gentestusers.sh -p pass -b ../libdrizzle/bin/mysql_password_hash -u user -n 1 -l "ou=people,dc=drizzle,dc=org"

Will output:

dn: uid=user0,ou=people,dc=drizzle,dc=org
objectclass: top
objectclass: posixAccount
objectclass: account
objectclass: drizzleUser
drizzleUserMysqlPassword: 196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7
uidNumber: 500
gidNumber: 500
uid: user0
homeDirectory: /home/user0
loginshell: /sbin/nologin
userPassword: pass
cn: user0

