我应该使用隐式授权类型还是授权代码授予类型?

时间:2018-01-26 04:38:06

标签: spring angular authentication oauth-2.0

我有一个单页网络应用程序,我试图用OAuth 2保护。理想情况下,在用户使用授权服务器进行身份验证之前,我不想提供任何静态资源。这可能与隐式授权类型有关吗?如果没有,是否存在使用授权代码授予类型与单页面Web应用程序的安全后果?

1 个答案:

答案 0 :(得分:1)

要保护静态资源,您需要使用cookie(浏览器会在每次请求时发送它们)。最简单的方法是使用一个会话,Spring Security可以在其中存储它的身份验证信息。您不能对服务器应用程序使用隐式授权,因为URL的哈希部分(包含令牌)不会从浏览器发送到您的服务器。因此,您需要使用身份验证代码授权。

您需要使用spring-security-oauth2模块配置Spring安全性,以要求对单页Web应用程序(SPA)进行身份验证。您查看some tutorial

如果您放弃保护静态资源的想法,可以使用SPA中的隐式流程,保持后端无状态。

相关问题