我们正在尝试使用 Spring Security 对我们的 Java 应用程序进行身份验证/授权。我们的身份提供者是一个自定义的 OAUTH 提供者(管理用户及其权限),并且在成功验证后将使用访问令牌 (JWT) 重定向到我们的应用程序。令牌使用 HS256 算法进行签名,成功解码后,我们可以获得用户的所有权限。问题是如何利用 Spring Security 提供的现有授权框架,如 @RolesAllowed 等 JSR250 注释以及 Spring 框架不包含的用户详细信息?
到目前为止,在我看到的所有示例中,Spring 框架管理UserDetailsService本身,其中 Spring知道用户详细信息。
所以问题是我如何映射我在 Token 中获得的角色,以通知 Spring 框架将这些角色应用于 REST 端点中的 @RolesAllowed 注释。我相信我必须编写一些 UserDetailsService 的自定义实现?