localStorage 不适合存储敏感数据因其无访问隔离、无过期机制、前端加密易被绕过应改用 HttpOnly Cookie 后端校验前端仅存非敏感信息。不建议在 localStorage 中直接存储敏感数据即使加密或脱敏也存在明显安全风险。它的本质是纯前端、明文可读的持久化存储任何具备浏览器调试能力的用户包括恶意脚本都能轻易访问、篡改或窃取内容。为什么 localStorage 不适合存敏感数据无访问隔离机制同源页面下所有 JavaScript 均可读写XSS 攻击一旦成功密钥和加密数据一并暴露。无自动过期与权限控制无法设置有效期、使用次数或绑定设备/会话也无法像后端 Token 那样主动吊销。加密容易沦为“假安全”若加密密钥硬编码在前端、或从服务端动态获取但未做严格校验攻击者仍可复用密钥解密脱敏如掩码手机号则根本没解决数据残留问题。真正可行的替代方案敏感操作必须依赖后端验证例如登录态用 HttpOnly Cookie 后端 Session 或 JWT 校验前端只存非敏感标识如用户ID、角色关键字段手机号、身份证、余额始终由接口按需返回且不缓存到 localStorage。 前端仅缓存低风险信息如用户昵称、头像URL、主题偏好等不涉及身份核验或资金安全的数据。 如确需临时缓存敏感字段极特殊情况应采用短期内存变量let token xxx、sessionStorage关闭标签页即销毁并确保页面卸载前手动清空监听 beforeunload。如果项目已用 localStorage 存了敏感数据怎么补救立即停止写入新敏感数据并分两步清理批量清除历史数据在应用启动时执行 localStorage.removeItem(sensitiveKey) 或遍历键名匹配关键词后删除。 替换为后端受控机制将原 localStorage 读写逻辑改为调用后端 API 获取/提交配合短期有效的 access_token 和严格的 CORS、CSRF 防护。 补充前端监控通过重写 localStorage.setItem 添加日志告警发现含身份证、银行卡、密码等关键词的键值对时上报运维平台。关于“前端加密”的常见误区有人尝试用 CryptoJS 或 Web Crypto API 加密后再存入 localStorage但这只是转移风险而非消除风险 WisPaper 复旦大学研发的AI学术搜索工具5分钟内筛选1000篇论文