自定义Wordpress身份验证插件无法正常工作
问题描述:
自从我使用Wordpress以来已经有一段时间了,但我被要求查看一个看起来不起作用的自定义身份验证插件。我只是复制并粘贴了我看起来无法正常工作的相关代码片段。检查密码总是显示不正确。自定义Wordpress身份验证插件无法正常工作
$user = $_GET['user'];
$pass = $_GET['pass'];
$hash = wp_hash_password('$pass');
$query = mysqli_query($con, "Select * from users where username='$user'");
while($row = mysqli_fetch_array($query)) {
$check = wp_check_password($pass, $hash)
}
$ check ALWAYS等于false。有人有主意吗?另外,wp_hash_password不会每次都做一个不同的散列,因为它会给它添加盐分?例如;当我写
$hash = wp_hash_password('pizza'); echo $hash;
哈希始终是不同的。因此,如何如果哈希始终是不同的CAN
wp_check_password($pass,$hash)
工作?
我真的很感谢所有帮助
答
检查wp-config.php
为secret key definitions,因为他们可以通过盐析它改变身份验证的哈希。如果他们在那里,则可能需要使用wp_salt
来将密码与数据库进行比较。
编辑: 密钥也存在于数据库的选项表中。它们可以从wp-config.php
或数据库中应用。如果您的网站在过去已被移动或编辑过,您可能需要检查两个地方,以确定WordPress是否窜改密码。
谢谢你的回答!你知道我该如何将盐传递给散列函数? –
您可以使用'wp_check_password'将纯文本密码与数据库中的哈希进行比较,而无需自己对密码进行哈希处理? –
感谢您的回复。我尝试过,但不幸的是,它总是回来作为假 –