Greetings!
I've successfully built apache2.2.8 with all the appropriate modules
[mod_authn*, mod_authz*, mod_dbd*, mod_ldap* etc etc] for ldap & mysql
support. An ldap [valid-user] protected area works fine. A mysql
[valid-user] protected area works fine. A mysql [require-dbd-group]
group protected area works fine.
However, when I use the "AuthBasicProvider ldap dbd" directive to
protect an area with ldap "failing through" to mysql the fall through
never occurs. Authentication / authorization seemingly gets "stuck" on
the first AuthBasicProvider argument. The 2nd argument is always ignored.
I explored this further by setting up a truth table where the
AuthBasicProvider arguments were swapped, the AuthLDAPURL &
AuthDBDUserPWQuery order were swapped, AuthzLDAPAuthoritative on/off
was toggled, & AuthBasicAuthoritative on/off was toggled. In all cases
the results indicate that only the 1st AuthBasicProvider argument gets
read while the 2nd is ignored.
I'm building apache with mod_dbd_mysql.c copied from apr-util-1.2.12
into httpd-2.2.8/srclib/apr-util/dbd
This is the configure I used:
CFLAGS='-DHAVE_MYSQL_H -I/usr/local/mysql/include
-L/usr/local/mysql/lib' ./configure --with-apr=/usr/local/apr
--with-apr-util=/usr/local/apr-util --enable-mods-shared=most
--enable-ldap --enable-authnz-ldap --enable-deflate --disable-userdir
--disable-cgi --disable-cgd --disable-auth-anon --disable-auth-dbm
--disable-expires --disable-headers --disable-status --disable-dav
--disable-dav-fs --disable-vhost-alias --disable-speling
--disable-rewrite --disable-ext-filter --enable-authn-alias
I then compiled mod_authz_dbd with "apxs -c -i -a mod_authz_dbd.c
mod_authz_dbd.h"
This is the directory in question:
<Directory ldap2mysql>
Options FollowSymLinks
AllowOverride None
AuthType Basic
AuthName "ldap2mysql"
AuthBasicProvider ldap dbd
AuthzLDAPAuthoritative off
AuthLDAPURL "ldap://ourldapserver/ou=people . . ."
AuthBasicAuthoritative on
AuthDBDUserPWQuery "SELECT password FROM mysqlauth WHERE user=%s"
Require valid-user
</Directory>
The mysql general.log and local.err logs show that a dbd connection is
not made. The apache error logs [debug] show that only LDAP connects.
[likewise, if dbd is the 1st provider only mysql shows a connection but
not ldap.]
Even though I know that the modules were refactored to prevent load
order from being an issue, I've just started to systematically change
the module load order so that all the ldap modules come before the dbd
modules but this has not resolved the issue . Our existing education
server which I'd like to upgrade from apache 2.0.58 uses mod_auth_mysql
and it requires a specific load order in order to work with apache's
built in ldap.
Can anyone give me a hint on the next step I should take in
troubleshooting?
Regards,
Bill Paredes
Computer Based Education
Albert Einstein College of Medicine
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [EMAIL PROTECTED]
" from the digest: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]