[sork] passwd with sql

Eric Rostetter eric.rostetter at physics.utexas.edu
Fri Feb 14 11:57:02 PST 2003


Quoting Shagol <shagol at shagol.com>:

> hmmm a funny answer ?
> 
> [14-Feb-2003 18:39:48] PHP Fatal error:  Call to undefined function:
> getdriverconfig() in
> /data/htdocs/mail.haug.li/horde/passwd/lib/Driver/sql.php
> on line 41

Known problem with the sql and vpopmail drivers in passwd 2.2 version.

> What does that mean ?

No one tested this before it was released.  See the mailing list archives
for a patch to vpopmail, and apply something similar to sql.  Or, wait
for the next release once I get this all worked out.  Or, downgrade to
passwd 2.1

> Zitat von Ilya <mail at krel.org>:
> 
> > Hmm, there is no place in config where you specify to use sql. I dont
> > actually
> > know how passwd knows to use sql if you leave all other backends in
> > backends.php
> > I usually remove all except sql.
> > Enable php debug logging and let us know what comes up there.
> > Also can you login to sql as
> > mysql -u kunden -h localhost Kunden ?
> >
> > On Thu, Feb 13, 2003 at 05:44:57PM +0100, Shagol wrote:
> > > Hi people
> > >
> > > Horde 2.1
> > > IMP 3.0
> > > Passwd 2.1
> > > cyrus-imapd-2.1.12
> > > cyrus-sasl-2.1.12
> > >
> > > I'm trying to change passwords stored in my MySQL DB with the passwd
> module
> >
> > > for Horde. After i clicked "change password" I see the following
> > > URL: /horde/passwd/main.php but the page is blank and doesn't change. The
> > > password is also not changed. I enabled logging on my MySQL Server, but
> > don't
> > > see anything from the passwd module. What's wrong ? Here my config files:
> > >
> > > passwd/config/conf.php
> > > -------------------------
> > > <?php
> > > /*
> > >  * passwd Configuration File
> > >  *
> > >  * This file contains global configuration settings for passwd. Values
> > >  * may be safely edited by hand. Use conf.php.dist as a reference.
> > >  *
> > >  * Strings should be enclosed in 'quotes'.
> > >  * Integers should be given literally (without quotes).
> > >  * Boolean values may be 'true' or 'false'.
> > >  *
> > >  * $Horde: passwd/config/conf.php.dist,v 1.1.1.1.2.3 2003/01/21 01:28:29
> > ericr
> > > Exp $
> > >  */
> > >
> > > // Define apps to put in the menu bar.  To include IMP in the menu bar,
> > you
> > > // would add: $conf['menu']['apps'] = array('imp');
> > >
> > > $conf['menu']['apps'] = array('imp');
> > >
> > > // Should we display a list of backends (defined in config/backends.php)
> > for
> > > // users to choose from?  The options are 'shown' or 'hidden'.  If the
> > list
> > > // is 'hidden' then you can use the 'preferred' mechanism to auto-select
> > > // a backend based on the HTTP virtualhost or another piece of data.  If
> > it
> > > // is 'shown' then the user will be able to pick from any of the
> backends.
> > >
> > > $conf['backend']['backend_list'] = 'shown';
> > >
> > > // Define usernames for which we will refuse to change passwords.
> > > // This may or may not work with realms or virtual hosting, depending on
> > setup
> > >
> > > $conf['user']['refused'] =
> > array('root','bin','daemon','adm','lp','shutdown',
> > >      'halt','uucp','ftp','anonymous','nobody','httpd','operator','guest',
> > >      'diginext','bind','courier','cyrus','games','kmem','mailnull','man',
> > >      'mysql','news','postfix','sshd','tty','www');
> > >
> > > // Should we perform simple strength tests on the passwords?
> > >
> > > $conf['password']['strengthtests'] = false;
> > >
> > > // Use a custom hook for modifying the username, or determining a
> > > // default username
> > > // Make sure to update $conf['user']['refused'] to match the username
> > > // format retuned by this function
> > > $conf['hooks']['username'] = false;
> > > $conf['hooks']['default_username'] = false;
> > >
> > >
> > > passwd/config/backends.php
> > > -------------------------
> > > <?php
> > > /**
> > >  * $Horde: passwd/config/backends.php.dist,v 1.14.2.3 2003/02/05 15:48:13
> > > ericr Exp $
> > >  *
> > >  * This file is where you specify what backends people use to
> > >  * change their passwords. There are a number of properties
> > >  * that you can set for each backend:
> > >  *
> > >  * name: This is the plaintext, english name that you want displayed
> > >  *       to people if you are using the drop down server list.  Also
> > >  *       displayed on the main page (input form).
> > >  *
> > >  * password policy: The password policies for this backend. You are
> > responsible
> > >  *                  for the sanity checks of these options. Options are:
> > >  *              minLength   Minimum length of the password
> > >  *              maxLength   Maximum length of the password
> > >  *              maxSpace    Maximum number of white space characters
> > >  *              minUpper    Minimum number of uppercase characters
> > >  *              minLower    Minimum number of lowercase characters
> > >  *              minNumeric  Minimum number of numeric characters (0-9)
> > >  *              minAlphaNum Minimum number of alphanumeric characters
> > >  *              minAlpha    Minimum number of alphabetic characters
> > >  *
> > >  * driver:    The Passwd driver used to change the password. Valid
> > >  *            Valid values are currently:
> > >  *              ldap         Change the password on a ldap server
> > >  *              sql          Change the password for sql authentication
> > >  *                           (exim, pam_mysql, horde)
> > >  *              poppassd     Change the password via a poppassd server
> > >  *              smbpasswd    Change the password via the smbpasswd
> command
> > >  *              expect       Change the password via an expect script
> > >  *              vmailmgr     Change the password via a local vmailmgr
> > daemon
> > >  *              vpopmail     Change the password for sql based vpopmail
> > >  *              servuftp     Change the password via a servuftp server
> > >  *
> > >  * params:    A params array containing any additional information that
> > the
> > >  *            Passwd driver needs
> > >  *
> > >  *            The following is a list of supported encryption/hashing
> > methods
> > >  *            supported by passwd
> > >  *
> > >  *            1) plain
> > >  *            2) crypt
> > >  *            3) md5-hex
> > >  *            4) md5-base64
> > >  *            5) smd5
> > >  *            6) sha
> > >  *            7) ssha
> > >  *
> > >  *            Currently, md5-base64, smd5, sha, and ssha require the
> mhash
> > php
> > >  *            library in order to work properly.  See the INSTALL file
> for
> > >  *            directions on enabling this.  md5 passwords have caused
> some
> >
> > >  *            problems in the past because there are different
> definitions
> > of
> > >  *            what is a "md5 password".  Systems implement them in a
> > different
> > >  *            manner.  If you are using OpenLDAP as your backend or have
> > >  *            migrated your passwords from your OS based passwd file, you
> > will
> > >  *            need to use the md5-base64 hashing method.  If you are
> using
> > a
> > >  *            SQL database or used the PHP md5() method to create your
> > >  *            passwords, you will need to use the md5-hex hashing method.
> >
> > >  *
> > >  * preferred: This is only useful if you want to use the same backend.php
> > >  *            file for different machines: if the Hostname of the Passwd
> > >  *            Machine is identical to one of those in the preferred list,
> > >  *            then the corresponding option in the select box will
> include
> > >  *            SELECTED, i.e. it is selected per default. Otherwise the
> > >  *            first entry in the list is selected.
> > >  */
> > >
> > > $backends['poppassd'] = array(
> > >     'name' => 'Example poppassd server',
> > >     'preferred' => '',
> > >     'password policy' => array(),
> > >     'driver' => 'poppassd',
> > >     'params' => array(
> > >         'host' => 'localhost',
> > >         'port' => 106
> > >     )
> > > );
> > >
> > > $backends['servuftp'] = array(
> > >     'name' => 'Example servuftp server',
> > >     'preferred' => '',
> > >     'password policy' => array(),
> > >     'driver' => 'servuftp',
> > >     'params' => array(
> > >         'host' => 'localhost',
> > >         'port' => 106,
> > >         'timeout' => 30
> > >     )
> > > );
> > >
> > > $backends['expect'] = array(
> > >     'name' => 'Example expect script',
> > >     'preferred' => '',
> > >     'password policy' => array(),
> > >     'driver' => 'expect',
> > >     'params' => array(
> > >         'program' => '/usr/bin/expect',
> > >         'script' => 'scripts/passwd_expect',
> > >         'params' => '-telnet -host localhost -output /tmp/passwd.log'
> > >     )
> > > );
> > >
> > > $backends['smbpasswd'] = array(
> > >     'name' => 'Example smbpasswd server',
> > >     'preferred' => '',
> > >     'password policy' => array(),
> > >     'driver' => 'smbpasswd',
> > >     'params' => array(
> > >         'program' => '/usr/bin/smbpasswd',
> > >         'host' => 'localhost'
> > >     )
> > > );
> > >
> > > $backends['ldap'] = array(
> > >     'name' => 'Example LDAP server',
> > >     'preferred' => 'www.example.com',
> > >     'password policy' => array(
> > >         'minLength' => 3,
> > >         'maxLength' => 8
> > >     ),
> > >     'driver' => 'ldap',
> > >     'params' => array(
> > >         'host' => 'localhost',
> > >         'port' => 389,
> > >         'basedn' => 'o=example.com',
> > >         'uid' => 'uid',
> > >         'realm' => '', // this will be appended to the username when
> > >                        // looking for the userdn.
> > > //        'userdn' => 'uid=' . Auth::getAuth() . ',o=example.com',
> > >         'encryption' => 'crypt'
> > >     )
> > > );
> > >
> > > $backends['sql'] = array (
> > >     'name' => 'Horde Authentication',
> > >     'preferred' => 'mail.haug.li',
> > >     'password policy' => array(
> > >         'minLength' => 3,
> > >         'maxLength' => 16,
> > >         'maxSpace' => 0,
> > >         'minUpper' => 0,
> > >         'minLower' => 0,
> > >         'minNumeric' => 0
> > >     ),
> > >     'driver' => 'sql',
> > >     'params' => array(
> > >         'phptype'    => 'mysql',
> > >         'hostspec'   => 'localhost',
> > >         'username'   => 'kunden',
> > >         'password'   => '*****',  // <-- my PWD :-)
> > >         'encryption' => 'plain',
> > >         'database'   => 'Kunden',
> > >         'table'      => 'EMail_users',
> > >         'user_col'   => 'username',
> > >         'pass_col'   => 'password'
> > >     )
> > > );
> > >
> > > $backends['vmailmgr'] = array(
> > >     'name' => 'vmailmgt Example',
> > >     'preferred' => '',
> > >     'password policy' => array(),
> > >     'driver' => 'vmailmgr',
> > >     'params' => array(
> > >         'vmailinc' => '/your/path/to/the/vmail.inc'
> > >     )
> > > );
> > >
> > > $backends['vpopmail'] = array (
> > >     'name' => 'vpopmail Authentication',
> > >     'preferred' => '',
> > >     'password policy' => array(
> > >         'minLength' => 3,
> > >         'maxLength' => 8,
> > >         'maxSpace' => 0,
> > >         'minUpper' => 0,
> > >         'minLower' => 0,
> > >         'minNumeric' => 0
> > >     ),
> > >     'driver' => 'vpopmail',
> > >     'params' => array(
> > >         'phptype'    => 'mysql',
> > >         'hostspec'   => 'localhost',
> > >         'username'   => '',
> > >         'password'   => '',
> > >         'encryption' => 'crypt',
> > >         'database'   => 'vpopmail',
> > >         'table'      => 'vpopmail',
> > >         'name'    => 'pw_name',
> > >         'domain'  => 'pw_domain',
> > >         'passwd' =>  'pw_passwd',
> > >         'clear_passwd' => 'pw_clear_passwd',
> > >         'use_clear_passwd' => true
> > >     )
> > > );
> > > --
> > > Sork mailing list
> > > Frequently Asked Questions: http://horde.org/faq/
> > > To unsubscribe, mail: sork-unsubscribe at lists.horde.org
> >
> 
> 
> --
> Sork mailing list
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: sork-unsubscribe at lists.horde.org
> 


-- 
Eric Rostetter
The Department of Physics
The University of Texas at Austin

Why get even? Get odd!


More information about the sork mailing list