【发布时间】:2020-03-12 20:16:12
【问题描述】:
我正在使用 express 构建一个带有 Vue.js 前端和 Node REST API 的 Web 应用程序。我正在尝试进行身份验证,特别是尝试使用 JWT 实现无状态。我将它们完全分开在不同的域上,并且在两者上都使用自签名 SSL 证书以在我的本地环境中使用 HTTPS。我一直在尝试实施here 概述的 JWT 身份验证策略,该策略建议使用快速过期的 JWT 进行授权,同时让 API 还通过 httponly cookie 向客户端传递“刷新令牌”。
我开始意识到,问题是在客户端我使用 axios 来提交请求和处理响应,而 httpOnly cookie 不能被 axios 之类的 javascript 库读取。
冗长的搜索似乎没有任何好的解决方法;所有 JWT 身份验证策略似乎都建议以某种方式使用 httpOnly cookie 来保持登录,并且似乎没有安全的方法可以从 axios 或其他 javascript REST 库访问 httpOnly cookie。这里有什么解决办法吗?我的问题是试图将前端和 API 放在两个不同的域上吗?
【问题讨论】:
标签: javascript node.js vue.js cookies jwt