首页 > 解决方案 > 在 Javascript localStorage 中存储密码

问题描述

我正在构建一个 Outlook 插件(它基本上是 Microsoft Outlook 客户端中提供的 iframe,无论是 Windows、Mac 还是浏览器)。它是一种内部公司工具,可将数据发送到我们的服务器。它使用 React/JS/Node。

我们的端点使用基本身份验证,因此我需要为每个请求传递一个用户名/密码。

问题是我想“记住”每个用户,这样他们就不必在每次应用加载时都输入凭据。我想我可以使用 HTML5localStorage来保存用户名/密码值。

但是我想知道这有多安全以及如何保留密码副本的建议?

也许对“用户名:密码”(用于授权 HTTP 标头)进行 base64 编码并存储它?

标签: javascriptreactjsoutlook-web-addins

解决方案


我认为在客户端存储密码没有安全的方法。不过我有两个建议。

  1. 因为您使用的是 React,所以您没有很多页面刷新,您可以在每次页面刷新时询问密码并将其存储为变量(非常安全)。

  2. 如果要存储它,请不要使用base64编码。而是jwt在客户端上对密码进行签名并将签名秘密存储为配置变量,然后对配置文件进行 uglify 并缩小它。这将很难找到秘密。


推荐阅读