[sork] passwd mysql problem
mrwolf at nunux.ca
mrwolf at nunux.ca
Sat May 23 14:51:24 UTC 2009
Thank you Jan,
the line is perfect and I can now change my password via passwd
without any problem.
Quoting Jan Schneider <jan at horde.org>:
> Zitat von mrwolf at nunux.ca:
>
>> Thanks Jan for your fast answer,
>>
>> if this line is good in my postfix:
>> query = SELECT 1 FROM virtual_users AS U LEFT JOIN virtual_domains
>> AS D ON U.domain_id=D.id WHERE CONCAT(U.user, '@',D.name)='%s'
>>
>> and those one aren't in passwd:
>> 'query_lookup' => 'SELECT password FROM virtual_users AS U LEFT
>> JOIN virtual_domains AS D ON U.domain_id=D.id WHERE U.user = %U
>> AND D.name = %d'
>
> This one is fine.
>
>> 'query_modify' => 'UPDATE virtual_users SET password = %e
>> virtual_users AS U LEFT JOIN virtual_domains AS D ON
>> U.domain_id=D.id WHERE U.user = %U AND D.name = %d'
>>
>> which part of those lines aren't good? is it the left join part or
>> any others parts?
>
> This is simply not a valid UPDATE syntax.
>
>> can you write me an example of what would be good for my db?
>
> Try something like (works only with sufficiently recent mysql versions):
> UPDATE virtual_users SET password = %e WHERE virtual_users.user = %U
> AND virtual_users.domain_id = (SELECT id FROM virtual_domains WHERE
> name = %d)
>
>> Quoting Jan Schneider <jan at horde.org>:
>>
>>> Zitat von mrwolf at nunux.ca:
>>>
>>>> Hi everyone,
>>>>
>>>> I have a particular mysql config that give me some problem with passwd:
>>>>
>>>> mysql> Select * from virtual_domains;
>>>> +----+--------------+
>>>> | id | name |
>>>> +----+--------------+
>>>> | 2 | domain1.ca |
>>>> | 3 | domain2.com |
>>>> | 1 | domain3.ca |
>>>> +----+--------------+
>>>> 3 rows in set (0.00 sec)
>>>>
>>>>
>>>> mysql> Select * from virtual_users;
>>>> +----+-----------+--------+------------+
>>>> | id | domain_id | user | password |
>>>> +----+-----------+--------+------------+
>>>> | 1 | 2 | user1 | <Password> |
>>>> | 2 | 1 | user2 | <Password> |
>>>> | 3 | 3 | user3 | <Password> |
>>>> +----+-----------+--------+------------+
>>>> 3 rows in set (0.00 sec)
>>>>
>>>> From postfix:
>>>> query = SELECT 1 FROM virtual_users AS U LEFT JOIN
>>>> virtual_domains AS D ON U.domain_id=D.id WHERE CONCAT(U.user,
>>>> '@',D.name)='%s'
>>>>
>>>> so I got: user1 at domain1.ca, user2 at domain3.ca, user3 at domain2.com
>>>>
>>>> I changed the backends.php from passwd to this:
>>>> $backends['sql'] = array (
>>>> 'name' => 'Exampe SQL Server',
>>>> 'preferred' => '',
>>>> 'password policy' => array(
>>>> 'minLength' => 7,
>>>> 'maxLength' => 15,
>>>> 'maxSpace' => 0,
>>>> 'minUpper' => 1,
>>>> 'minLower' => 1,
>>>> 'minNumeric' => 1,
>>>> 'minSymbols' => 0
>>>> ),
>>>> 'driver' => 'sql',
>>>> 'params' => array(
>>>> 'phptype' => 'mysql',
>>>> 'hostspec' => 'localhost',
>>>> 'username' => '<MySQL_User>',
>>>> 'password' => '<password>',
>>>> 'encryption' => 'md5-hex',
>>>> 'database' => 'virtual_email',
>>>> 'table' => 'virtual_users',
>>>> //'user_col' => 'user',
>>>> //'pass_col' => 'password',
>>>> 'show_encryption' => false,
>>>> // 'query_lookup' => 'SELECT password FROM virtual_users,
>>>> virtual_domains WHERE virtual_users.user = %u',
>>>> 'query_lookup' => 'SELECT password FROM virtual_users AS U LEFT
>>>> JOIN virtual_domains AS D ON U.domain_id=D.id WHERE U.user = %U
>>>> AND D.name = %d',
>>>> //'query_modify' => 'UPDATE virtual_users SET password = %e
>>>> WHERE user = %u',
>>>> 'query_modify' => 'UPDATE virtual_users SET password = %e
>>>> virtual_users AS U LEFT JOIN virtual_domains AS D ON
>>>> U.domain_id=D.id WHERE U.user = %U AND D.name = %d'
>>>
>>> This is not a valid SQL query.
>>>
>>>> )
>>>> );
>>>>
>>>> when I try to change my password passwd tell me that he didn't
>>>> found any matching user
>>>>
>>>> can anyone help me fix my passwd backends?
>>>>
>>>> thank you
>>>> --
>>>> Sork mailing list - Join the hunt: http://horde.org/bounties/#sork
>>>> Frequently Asked Questions: http://horde.org/faq/
>>>> To unsubscribe, mail: sork-unsubscribe at lists.horde.org
>>>>
>>>
>>>
>>>
>>> Jan.
>>>
>>> --
>>> Do you need professional PHP or Horde consulting?
>>> http://horde.org/consulting/
>>>
>>
>>
>> --
>> Sork mailing list - Join the hunt: http://horde.org/bounties/#sork
>> Frequently Asked Questions: http://horde.org/faq/
>> To unsubscribe, mail: sork-unsubscribe at lists.horde.org
>>
>
>
>
> Jan.
>
> --
> Do you need professional PHP or Horde consulting?
> http://horde.org/consulting/
>
More information about the sork
mailing list