首页 新闻 会员 周边 捐助

如何在 Mysql 语句中使用 CRAM-MD5 方式对密码编码?

0
悬赏园豆:100 [待解决问题]

现有roundcube+postfixadmin的环境,
用了roundcube自带的password插件修改密码,但是postfixadmin的密码加密方式是CRAM-MD5,
如下sql:
UPDATE mailbox SET password='123456' WHERE username='user001'

 

问:

123456应该怎么样用CRAM-MD5加密方式变换呢呢?

颜小希的主页 颜小希 | 初学一级 | 园豆:6
提问于:2016-12-05 15:21
< >
分享
所有回答(1)
0

现有roundcube+postfixadmin的环境,
用了roundcube自带的password插件修改密码,但是postfixadmin的密码加密方式是CRAM-MD5,
下面这句就是明文的,
UPDATE mailbox SET password=%p WHERE username=%u

我在phpmyadmin里面看到CRAM-MD5编码方式得到的是
{CRAM-MD5}e242eae7d898607cdade67c99081da7b56fc60aa9acfceb9016b21c80b6872f3
(对应)ABC@123456

怎么写这句sql语句来更新密码呢?

// The SQL query used to change the password.
// The query can contain the following macros that will be expanded as follows:
// %p is replaced with the plaintext new password
// %c is replaced with the crypt version of the new password, MD5 if available
// otherwise DES. More hash function can be enabled using the password_crypt_hash 
// configuration parameter.
// %D is replaced with the dovecotpw-crypted version of the new password
// %o is replaced with the password before the change
// %n is replaced with the hashed version of the new password
// %q is replaced with the hashed password before the change
// %h is replaced with the imap host (from the session info)
// %u is replaced with the username (from the session info)
// %l is replaced with the local part of the username
// (in case the username is an email address)
// %d is replaced with the domain part of the username
// (in case the username is an email address)
// Escaping of macros is handled by this module.
// Default: "SELECT update_passwd(%c, %u)"
$config['password_query'] = 'UPDATE mailbox SET password=%d WHERE username=%u';

段情 | 园豆:167 (初学一级) | 2016-12-05 15:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册