使用JavaScript在cookie中临时存储密码(字符串)可以吗?

使用JavaScript在cookie中临时存储密码(字符串)可以吗?,javascript,ajax,wordpress,Javascript,Ajax,Wordpress,我知道这样做的答案通常是否定的,但我会在运行函数后立即删除cookie。我拥有的是一个注册用户(WordPress)的函数,然后将数据发送到Pardot,然后在页面重定向中,我希望它使用您注册的密码让您登录 我在下面有一个函数,它可以很好地为您注册,然后让您登录: function register_user_form() { $user_login = $_POST['currentUserName']; $user_email = $_POST['currentUserEma

我知道这样做的答案通常是否定的,但我会在运行函数后立即删除cookie。我拥有的是一个注册用户(WordPress)的函数,然后将数据发送到Pardot,然后在页面重定向中,我希望它使用您注册的密码让您登录

我在下面有一个函数,它可以很好地为您注册,然后让您登录:

function register_user_form() {
    $user_login = $_POST['currentUserName'];
    $user_email = $_POST['currentUserEmail'];
    $user_pass = $_POST['currentUserPassword'];

    $userdata = compact( 'user_login', 'user_email', 'user_pass' );
    $user = wp_insert_user($userdata);
    $creds = array('user_login' => $user_login, 'user_password' => $user_pass, 'remember' => true);
    $user = wp_signon($creds);

}
add_action('wp_ajax_register_user_form', 'register_user_form');
add_action('wp_ajax_nopriv_register_user_form', 'register_user_form');

因此,在表单提交时,我会保存cookie,然后在页面从Pardot重定向回来后,我会使用cookie数据让您登录,然后立即删除cookie。

我不推荐这种解决方案,但如果您确实因为某种原因必须这样做,请确保在存储之前对其进行加密,并在读取时对其进行解密。这就是我在从后端发送密码到前端时所做的,反之亦然。这里有一个指南:


在给定的代码中,您可以看到使用salt(随机值)的加密函数,该函数使用sha256对密码进行散列。Salt(未加密)返回到主函数,您可以将其保存到cookie中。读取cookie后,将其传递给decrypt方法,该方法将使用先前生成的salt对其进行解密。您还可以使用一些前端不可见的加密密钥作为salt,这样它就不会与散列密码一起存储。

不,永远不要将密码暴露在服务器之外。您可能想看看我不久前创建的这个示例项目。这有时称为
联合
欢迎使用堆栈溢出!虽然这肯定是一个有效的答案,但请将您链接的代码的关键点以及一些解释包括在内。谢谢