繁体   English   中英

浏览器的本地存储有多安全?

[英]How secure is local storage of browser?

      `$(function rememberMe() {

        if (localStorage.chkbx && localStorage.chkbx != '') {
            $('#remember-me').attr('checked', 'checked');
            $('#user').val(localStorage.usrname);
            $('#pass').val(localStorage.pass);
        } else {
            $('#remember-me').removeAttr('checked');
            $('#user').val('');
            $('#pass').val('');
        }

        $('#remember-me').click(function() {

            if ($('#remember-me').is(':checked')) {
                localStorage.usrname = $('#user').val();
                localStorage.pass = $('#pass').val();
                localStorage.chkbx = $('#remember-me').val();
            } else {
                localStorage.usrname = '';
                localStorage.pass = '';
                localStorage.chkbx = '';
            }
        });
    });

我已经使用本地存储在登录页面上实现“记住我”功能,但我怀疑它是多么安全。 我将密码存储在本地存储中,但我想使用更好的选项。加密不会有帮助,因为我必须在客户端发送解密脚本。 还有其他选择吗?

不要存储密码。 在服务器端进行哈希加密,并在浏览器上存储cookie(localstorage或其他),如果通过https提供,则更好。 始终执行加密/解密服务器端。

您可以看到有关如何安全地执行此操作以及遵循此stackoverflow答案中的最佳实践的一个很好的解释:

为网站实现“记住我”的最佳方法是什么?

基于表单的网站身份验证的权威指南

无论它在哪里说cookie,你都可以放置localstorage

切勿在本地存储中存储密码。

  1. 进行身份验证,
  2. 创建会话密钥并将此密钥存储在SQL中,
  3. 将会话密钥保存在用户存储中,
  4. 按会话密钥恢复会话,
  5. 如果用户重新登录,请创建新的会话密钥。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM