DokuWiki

It's better when it's simple

User Tools

Site Tools


auth:mysql_fudforum

This is an old revision of the document!


FUDforum

User authentication with FUDforum.

Tested on FUDforum version 2.7.6.

This assumes that all user accounts will be created and maintained through FUDforum. :!: Newer FUDforum Versions uses fud26 as table prefix.

<?php
/**
 * Options to configure for a FUDforum database
 * http://fudforum.org/
 */
 
/**
 * Turn off registration on DokuWiki
 */
$conf['openregister'] = 0;
 
/**
 * Set the signature for all users
 *
 * This signature will link to the user's FUDforum profile. To make this work
 * correctly, add the following line to the conf/interwiki.conf file. Be sure
 * to replace "forum.example.org" with the hostname for your FUDforum 
 * installation. You may need to modify the path to index.php if you installed
 * FUDforum in a directory other than root. This also assumes you have 
 * PATH_INFO style URLs turned on in FUDforum.
 *
 *   user      http://forum.example.org/index.php/u/{PATH}/
 *
 * If you are not using PATH_INFO style URLs in FUDforum, use the following 
 * format in interwiki.conf:
 *
 *   user      http://forum.example.org/index.php?t=usrinfo&id={URL}
 *
 * Note that this relies on the getUserInfo query below that stores the user
 * id in the `mail` field instead of the actual e-mail address.
 */
$conf['signature'] = '//[[user>@MAIL@|@NAME@]] @DATE@//';
 
/**
 * Database connection parameters; change these for your environment
 */
$conf['auth']['mysql']['server']   = '';
$conf['auth']['mysql']['user']     = '';
$conf['auth']['mysql']['password'] = '';
$conf['auth']['mysql']['database'] = '';
 
/**
 * Send password in clear text to database
 */
$conf['auth']['mysql']['forwardClearPass'] = 1;
 
/**
 * Authenticate user by checking password
 */
$conf['auth']['mysql']['checkPass']= "SELECT passwd as `pass`
                                      FROM fud_users
                                      WHERE login='%{user}' 
                                      AND passwd=MD5('%{pass}')";
 
/**
 * Get user info
 *
 * Note the use of "id AS `mail`". Instead of retrieving the user's email
 * address, I'm getting the ID for use with the user's DokuWiki signature
 * (see note on $conf['signature'] above). If you do not wish to use this
 * signature and would rather get the e-mail address, use "email" instead of
 * "id" in the query below.
 */
$conf['auth']['mysql']['getUserInfo'] = "SELECT passwd AS `pass`, login AS `name`, id AS `mail`
                                         FROM fud_users
                                         WHERE login='%{user}'";
 
/**
 * Get groups to which user belongs
 *
 * Note the use of the UNION. This allows all registered users to be a member
 * of the default group (as defined in $conf['defaultgroup']) without the 
 * need to create a new group in FUDforum. Other groups may be created in 
 * FUDforum for "admin," etc.
 */
$conf['auth']['mysql']['getGroups'] = "SELECT fud_groups.name AS 'group'
                                       FROM fud_groups, fud_users, fud_group_members
                                       WHERE fud_users.id = fud_group_members.user_id
                                       AND fud_groups.id = fud_group_members.group_id
                                       AND fud_users.login='%{user}'
                                       UNION 
                                       SELECT '" . $conf['defaultgroup'] . "' as `group`";
?>

Ben Ramsey 2007-03-12 16:39

auth/mysql_fudforum.1285337465.txt.gz · Last modified: 2010-09-24 16:11 by 195.35.72.172

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki