Dear all,
I just discovered the password plugin that comes by default with
RC, and have enabled it. As I expected it did not work out of the box, (mysql driver) because I know that I have to adapt the plug-in to my particular configuration.
I have all passwords stored in a mysql backend that was configured using postfixadmin. Is it possible, and if so does any one have any pointers, to get RoundCube's password plug-in to work with the mysql backup as configured with the default postfixadmin mysql set-up?
Best regards, J.
On 04/17/2011 08:45 PM, JKL wrote:
Dear all,
I just discovered the password plugin that comes by default with
RC, and have enabled it. As I expected it did not work out of the box, (mysql driver) because I know that I have to adapt the plug-in to my particular configuration.
I have all passwords stored in a mysql backend that was configured using postfixadmin. Is it possible, and if so does any one have any pointers, to get RoundCube's password plug-in to work with the mysql backup as configured with the default postfixadmin mysql set-up?
Best regards, J.
Hi,
Follow up with more info:
I have a roundcube database in mysql. It contains a table of user acconts, but not the passwords (crededtials).
The credentials are in the mysql dB set up by postfixadmin. The postfixadmin dB has this table:
mysql> describe mailbox; +------------+--------------+------+-----+---------------------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+--------------+------+-----+---------------------+-------+ | username | varchar(255) | NO | PRI | NULL | | | password | varchar(255) | NO | | NULL | | | name | varchar(255) | NO | | NULL | | | maildir | varchar(255) | NO | | NULL | | | quota | bigint(20) | NO | | 0 | | | local_part | varchar(255) | NO | | NULL | | | domain | varchar(255) | NO | MUL | NULL | | | created | datetime | NO | | 0000-00-00 00:00:00 | | | modified | datetime | NO | | 0000-00-00 00:00:00 | | | active | tinyint(1) | NO | | 1 | | +------------+--------------+------+-----+---------------------+-------+
The RoundCube installation has the roundcube dB configured in the config/db.inc.php.
However, for the password plugin to work, I imagine that it has to update a row in the other database that contains the actual credentials: (postfixadmin,mailbox.password).
The password plugin file : plugins/password/config.inc.php does not contain any method to interact with postfixadmin dB.
Could I add ths parameter into the plugins/password/config.inc.php to enable this? Would it work, well?
$rcmail_config['db_dsnw'] = 'mysql://roundcube:MyDbPassword@localhost/postfixadmin';
List info: http://lists.roundcube.net/users/ BT/9b404e9e
On 04/21/2011 10:36 AM, J4K wrote:
On 04/17/2011 08:45 PM, JKL wrote:
Dear all,
I just discovered the password plugin that comes by default with
RC, and have enabled it. As I expected it did not work out of the box, (mysql driver) because I know that I have to adapt the plug-in to my particular configuration.
I have all passwords stored in a mysql backend that was configured using postfixadmin. Is it possible, and if so does any one have any pointers, to get RoundCube's password plug-in to work with the mysql backup as configured with the default postfixadmin mysql set-up?
Best regards, J.
Hi,
Follow up with more info:
I have a roundcube database in mysql. It contains a table of user acconts, but not the passwords (crededtials).
The credentials are in the mysql dB set up by postfixadmin. The postfixadmin dB has this table:
mysql> describe mailbox; +------------+--------------+------+-----+---------------------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+--------------+------+-----+---------------------+-------+ | username | varchar(255) | NO | PRI | NULL | | | password | varchar(255) | NO | | NULL | | | name | varchar(255) | NO | | NULL | | | maildir | varchar(255) | NO | | NULL | | | quota | bigint(20) | NO | | 0 | | | local_part | varchar(255) | NO | | NULL | | | domain | varchar(255) | NO | MUL | NULL | | | created | datetime | NO | | 0000-00-00 00:00:00 | | | modified | datetime | NO | | 0000-00-00 00:00:00 | | | active | tinyint(1) | NO | | 1 | | +------------+--------------+------+-----+---------------------+-------+
The RoundCube installation has the roundcube dB configured in the config/db.inc.php.
However, for the password plugin to work, I imagine that it has to update a row in the other database that contains the actual credentials: (postfixadmin,mailbox.password).
The password plugin file : plugins/password/config.inc.php does not contain any method to interact with postfixadmin dB.
Could I add ths parameter into the plugins/password/config.inc.php to enable this? Would it work, well?
$rcmail_config['db_dsnw'] = 'mysql://roundcube:MyDbPassword@localhost/postfixadmin';
Regards.
easily solved: (easy is subjective)
In the plugins/password/config.inc.php:
Change this line from $rcmail_config['password_db_dsn'] = ''; to $rcmail_config['password_db_dsn'] = 'mysql://username:password@localhost/postfixadmin'; (Here my username and password are my roundcube users ones)
Change this line
from
$rcmail_config['password_query'] = 'SELECT update_passwd(%c, %u)';
to
$rcmail_config['password_query'] = "UPDATE mailbox
SET password
= %c, modified=now() WHERE username
= %u LIMIT 1";
Grant permissions for your roundcube user to the postfixadmin database. (One could also use the postfixadmin user instead, but I think its easier to keep these separated. It is better that roundcube creds are compromised instead of the postfixadmin credentials)
GRANT SELECT, UPDATE (password, modified)
ON postfixadmin.mailbox
TO 'roundcube'@'localhost'
IDENTIFIED BY 'password'
Note: Replace with your datavase names and user names accordingly.
Note that password is not the encrypted password one sees in the database, but the actual plain text password Not: *327384943$@$@#$@#%$@$@#$@#$ But this: MySecretPassword These are examples.