auth:mysql_flyspray
Table of Contents
« MySQL Authentification Backend
Flyspray
Flyspray 0.9.9
Flyspray 0.9.8
This is the setup used here at splitbrain to authenticate against the Flyspray Bugtrackingsystem.
$conf['passcrypt'] = 'md5'; $conf['authtype'] = 'mysql'; $conf['defaultgroup'] = 'reporters'; $conf['auth']['mysql']['debug'] = 0; //set to 1 during config $conf['auth']['mysql']['server'] = 'localhost'; $conf['auth']['mysql']['user'] = 'flyspray'; $conf['auth']['mysql']['password'] = 'secret'; $conf['auth']['mysql']['database'] = 'flyspray'; $conf['auth']['mysql']['getUserID'] = "SELECT user_id AS id FROM flyspray_users WHERE user_name='%{user}'"; $conf['auth']['mysql']['getGroupID'] = "SELECT group_id AS id FROM flyspray_groups WHERE LOWER(group_name)='%{group}'"; $conf['auth']['mysql']['checkPass'] = "SELECT user_pass AS pass FROM flyspray_users WHERE user_name='%{user}' AND account_enabled=1"; $conf['auth']['mysql']['getGroups'] = "SELECT LOWER(g.group_name) as `group` FROM flyspray_groups AS g, flyspray_users AS u, flyspray_users_in_groups AS ug WHERE g.group_id = ug.group_id AND ug.user_id = u.user_id AND u.user_name='%{user}'"; $conf['auth']['mysql']['getUserInfo'] = "SELECT user_pass AS pass, real_name AS name, email_address AS mail FROM flyspray_users WHERE user_name='%{user}'"; $conf['auth']['mysql']['getUsers'] = "SELECT DISTINCT u.user_name AS user FROM flyspray_users AS u LEFT JOIN flyspray_users_in_groups AS ug ON u.user_id=ug.user_id LEFT JOIN flyspray_groups AS g ON ug.group_id=g.group_id"; $conf['auth']['mysql']['FilterLogin'] = "u.user_name LIKE '%{user}'"; $conf['auth']['mysql']['FilterName'] = "u.real_name LIKE '%{name}'"; $conf['auth']['mysql']['FilterEmail'] = "u.email_address LIKE '%{email}'"; $conf['auth']['mysql']['FilterGroup'] = "g.group_name LIKE '%{group}'"; $conf['auth']['mysql']['SortOrder'] = "ORDER BY u.user_name"; $conf['auth']['mysql']['addUser'] = "INSERT INTO flyspray_users SET user_name = '%{user}', user_pass = '%{pass}', real_name = '%{name}', email_address = '%{email}', jabber_id = '', notify_type = 1, account_enabled = 1, dateformat = '', dateformat_extended = '', magic_url = '', last_search = '', tasks_perpage = 25"; $conf['auth']['mysql']['updateUser'] = "UPDATE flyspray_users SET"; $conf['auth']['mysql']['UpdateLogin'] = "user_name='%{user}'"; $conf['auth']['mysql']['UpdatePass'] = "user_pass='%{pass}'"; $conf['auth']['mysql']['UpdateEmail'] = "email_address='%{email}'"; $conf['auth']['mysql']['UpdateName'] = "real_name='%{name}'"; $conf['auth']['mysql']['UpdateTarget']= "WHERE user_id=%{uid}"; $conf['auth']['mysql']['addGroup'] = "INSERT INTO flyspray_groups SET group_name = '%{group}', group_desc = '%{group} group'"; #$conf['auth']['mysql']['delGroup'] = "DELETE FROM flyspray_groups # WHERE group_id='%{gid}'"; $conf['auth']['mysql']['addUserGroup']= "INSERT INTO flyspray_users_in_groups (user_id,group_id) VALUES ('%{uid}', '%{gid}')"; $conf['auth']['mysql']['delUserGroup']= "DELETE FROM flyspray_users_in_groups WHERE user_id='%{uid}' AND group_id='%{gid}'"; #$conf['auth']['mysql']['delUserRefs'] = "DELETE FROM flyspray_users_in_groups # WHERE group_id='%{gid}';"; $conf['auth']['mysql']['TablesToLock']= array("flyspray_users", "flyspray_users AS u", "flyspray_groups", "flyspray_groups AS g", "flyspray_users_in_groups", "flyspray_users_in_groups AS ug");
Note all delete commands are commented because I don't use them, so these are untested but should work.
auth/mysql_flyspray.txt · Last modified: 2011-03-22 17:27 by Aleksandr