OAuth 2.0 资源服务器
Spring Security 通过提供两种形式的 OAuth 2.0 Bearer Tokens 来支持保护端点:
-
不透明令牌
这在应用程序将其权限管理委托给授权服务器(例如,Okta 或 Ping Identity)的情况下非常有用。资源服务器可以咨询此授权服务器以授权请求。
备注
一个完整的 JWT 工作示例可以在 Spring Security 仓库 中找到。
小节总结
📄️ JWT
大多数资源服务器的支持都集中于 spring-security-oauth2-resource-server 中。然而,解码和验证 JWT 的支持位于 spring-security-oauth2-jose 中,这意味着两者都是必需的,以便拥有一个支持 JWT 编码的承载令牌的正常工作的资源服务器。
📄️ 不透明令牌
如在最小依赖于 JWT 中所述,大多数资源服务器支持都集中于 spring-security-oauth2-resource-server 中。但是,除非你提供一个自定义的 ReactiveOpaqueTokenIntrospector,否则资源服务器将回退到 ReactiveOpaqueTokenIntrospector。这意味着 spring-security-oauth2-resource-server 和 oauth2-oidc-sdk 都是必需的,以使支持不透明持有者令牌的最小资源服务器能够正常工作。请参阅 spring-security-oauth2-resource-server 以确定 oauth2-oidc-sdk 的正确版本。
📄️ 多租户
当根据某些租户标识符存在多种验证持有者令牌的策略时,资源服务器被视为多租户。
📄️ Bearer Tokens
默认情况下,资源服务器会在 Authorization 头中查找承载令牌。但是,您可以验证此令牌。