问题:
我想使用VueJS创建一个webapp,并使用NodeJS(ExperssJS和PostgreSQL)创建一个自定义后端。应该可以使用用户名和密码登录。成功登录后,用户可以访问ExpressJS服务器的安全endpoint。
现在我在想如何在成功登录后安全地验证HTTP请求。
我考虑做的事情:
使用JWT并在每个请求的身份验证标头中提供它。
当用户提供正确的登录数据时,服务器创建JWT并将其作为响应发送给客户端。客户端存储令牌并将其作为授权标头添加到每个HTTP请求中。因为传输是TLS(HTTPS)保护的,所以令牌在传输时不应该可见。为了提供无缝的用户体验,令牌必须保存在客户端,因此用户不必为每个请求进行身份验证。所以我的问题是:如何安全地保存JWT令牌以进一步HTTP请求身份验证?
可能的选项:
最后的想法:
是否有“绝对安全”或“最佳实践”方法来处理此类场景的身份验证?
P. S.我对这个领域很陌生,所以如果我写了一些愚蠢的东西,请原谅我:D我也知道有很多关于如何设置这样的教程,但是我想知道的是,哪种技术是最好的,最安全的。
提前感谢!
PassportJS还支持使用本地策略。你可能想看看。在这里
如果您是新手,那么最好使用已经构建的用户身份验证流程,例如Google登录、Disord登录等。
有一个名为Passport的著名库JS它使第三方登录系统集成变得轻而易举。