Google使用Spring Boot Security和React登录

时间:2019-06-13 17:02:25

标签: java reactjs spring-security google-oauth2

我正在使用google登录登录我的应用程序。我应该在哪里存储访问令牌和刷新令牌?我读过几篇文章说,将这些令牌存储在前端并不安全。这是我在大多数帖子中看到的流程:

  1. 用户单击Google按钮登录,前端执行所有授权流程。

  2. 前端将令牌发送给后端api,后端api对其进行验证并进行与用户相关的进一步处理。

现在,我的问题是,如果后端api在每个请求中都需要令牌,那么前端必须将其存储在某个地方(这是不安全的)。如果我在后端存储令牌,那么前端在后续请求中如何与后端通信?

1 个答案:

答案 0 :(得分:0)

您希望使服务器保持无状态,这意味着,如果服务器意外崩溃,则每个用户都不必重新进行身份验证。另外,正如您提到的,您需要将令牌存储在前端中,以验证后续请求。

通常,您将其存储在cookie或浏览器中的localStorage中。正如您所提到的,令牌的存储可能不安全,但是,将令牌存储在cookie中或多或少仅受CSRF的影响,我认为这是一个不错的选择。

如果您想阅读更多内容,可以找到以下文章:https://stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5-web-storage