在互联网上搜索后,我知道使用 drupal 7,密码不再通过 md5 加密。
在 Drupal 7 中加密密码的可能方法是什么?
在互联网上搜索后,我知道使用 drupal 7,密码不再通过 md5 加密。
在 Drupal 7 中加密密码的可能方法是什么?
使用 drupal 7,密码不再通过 md5 加密。在 drupal7 中有几种获取/设置密码的方法。使用 drush (供您参考,在您的情况下未使用):
drush upwd admin --password="newpassword"
没有 drush,如果您对服务器有 cli 访问权限:(供您参考,在您的情况下未使用)
cd <drupal root directory>
php scripts/password-hash.sh 'myPassword'
现在复制生成的哈希并将其粘贴到查询中:
update users set name='admin', pass='pasted_big_hash_from_above' where uid=1;
谢谢马利克。
经过搜索,我发现了不同的解决方案。以下解决方案也有效
如果您在无法连接的远程环境中工作,则可以将此指定代码放在一个文件中,例如 password.php,例如:
<?php
if (isset($_GET['p'])) {
require_once dirname(__FILE__) . '/includes/bootstrap.inc';
require_once dirname(__FILE__) . '/includes/password.inc';
print _password_crypt('sha512', $_GET['p'], _password_generate_salt(DRUPAL_HASH_COUNT));
exit();
}
print "No password to hash.";
然后使用:http://domain.tld/password.php?p='MyPassword' 访问您的网站。哈希值将出现在您的浏览器选项卡上。完成后不要忘记将其删除。所以,如果你想使用一些密码函数生成,看看 _password_crypt() 和 _password_generate_salt()
该user_hash_password()
功能可用于哈希密码,如果您想从 Drupal 外部使用它,您需要引导 Drupal 配置。
chdir("/path/to/drupal");
require_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_CONFIGURATION);
user_hash_password($password);