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



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

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

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

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

相关内容

最新更新