Comment 0 for bug 150651

Revision history for this message
Mrts (mrts) wrote :

Binary package hint: libaprutil1

As of Mon Oct 8 17:08:24 EEST 2007, there is no working solution to authenticate with mysql from apache. This is a serious problem that might hinder migration to gutsy in many sites.

I have to file this bug against two packages as there are two possible solutions for mysql authentication, *neither of which work*:
1 [RECOMMENDED by Apache Foundation] mod_authn_dbd
(http://httpd.apache.org/docs/2.2/mod/mod_authn_dbd.html) -- libapr1 doesn't contain a mysql driver, being entirely unusable (see detailed report at the other bug report referenced below)
2 [DEPRECATED] libapache2-mod-auth-mysql
doesn't honour the AuthBasicAuthoritative Off directive and doesn't work. See #150649

Versions:
-------------
Updated Gutsy beta release.

apache2-mpm-prefork 2.2.4-3build1
libaprutil1 1.2.7+dfsg-2build1

Setup:
-------------

a2enmod authn_dbd

virtual host conf:
        DBDriver mysql
        DBParams host=localhost, user=authtestuser, pass=something, dbname=apache_auth_test

        <Location /dbdauth>
                AuthName "dbd-auth test"
                AuthType Basic

                AuthBasicProvider dbd
                AuthDBDUserPWQuery "select passwd from auth where username = %s"

                Require valid-user
        </Location>

db setup:
DROP database IF EXISTS apache_auth_test;

create database apache_auth_test;

use apache_auth_test;

create table auth ( username char(25) not null,
        passwd char(25), primary key (username) );

insert into auth values ('somebody', PASSWORD('random'));

grant all privileges on apache_auth_test.* to authtestuser@localhost identified by 'authtestpassword';

Result:
-------------

Apache doesn't start, complaining:
Syntax error on line 37 of /etc/apache2/sites-enabled/000-default:
DBD: No driver for mysql
   ...fail!

Conclusion:
-------------

mysql driver is missing from libaprutils. See also Debian bug #405773