我计划在AngularJS上使用Spring RESTful API后端和客户端创建应用程序 .
我想通过Google OAuth2授权服务器保护我的Spring RESTful API .
我有一个架构问题:
在Google成功授权后,我会从Google OAuth2授权服务器收到accessToken . 我是否需要将此accessToken传输到我的客户端应用程序(AngularJS),或者我需要在我的后端应用程序中引入一些自己的安全层(例如使用JWT)并基于Google accessToken发布自己的jwtToken并仅将此令牌传输到我的客户端应用?
换句话说 - 将Google的accessToken显示到我的客户端AngularJS应用程序并将其用于我自己的RESTful API中的身份验证是否安全?
另外,在我的RESTful API的情况下,我是否需要在从客户端应用程序(AngularJS)到我的安全RESTful API的每次调用之后使用Google Auth服务器验证Google accessToken?
1 回答
它实际上不是您的访问令牌,它意味着您的客户端使用它 . 给他们提供令牌是完全安全的,因为他们必须在每次请求时将令牌发送到你的后端 . 这是因为REST的本质 .
是的,只要您的客户向您的后端发送令牌,您就必须致电Google . 令牌可以无效的原因有多种 . 例如,用户可以撤消应用程序的访问权限,令牌只是过期等 .
More reading on implementing a REST backend with Google OAuth 2