Spring Cloud OAuth2:添加用户权限

Posted

技术标签:

【中文标题】Spring Cloud OAuth2:添加用户权限【英文标题】:Spring Cloud OAuth2: Adding user authorities 【发布时间】:2017-03-30 03:50:34 【问题描述】:

我们通过遵循this 示例源代码,设法使用 Spring Cloud OAuth2 设置了一个 Web 应用程序,该应用程序实现了来自不同身份提供商(如 Facebook 和 Google)的单点登录。

计划拥有自己的身份验证/授权服务器,我们提供了自己的UserDetailsGrantedAuthority,我们在其中关联了用户的 Facebook 和 Google。除了ROLE_USER,我们还有自己的用户权限集。

我们根据用户的角色保护我们的业务方法(我们使用@RolesAllowed)。当用户使用他们的 Facebook 和 Google 帐户登录时,只会添加 ROLE_USER 作为他们的权限。我想知道如何在登录外部身份提供者时从关联用户的GrantedAuthority 添加我们自己的用户权限,尽管我发现这可以使用AuthoritiesExtractor 完成,但找不到具体的例子。

【问题讨论】:

【参考方案1】:

我能够使用AuthoritiesExtractor 修改/设置权限,该权限设置为UserInfoTokenServices

【讨论】:

太棒了。这非常有用

以上是关于Spring Cloud OAuth2:添加用户权限的主要内容,如果未能解决你的问题,请参考以下文章

Spring Cloud OAuth2:添加用户权限

最新版微服务架构鉴权解决方案Spring Cloud Gateway + Oauth2.0+mybatis+mysql+redis+nacos 统一认证和鉴权

Spring Cloud:Security OAuth2 自定义异常响应

Spring Cloud:Security OAuth2 自定义异常响应

Spring Cloud OAuth2 整合手册

实战干货!Spring Cloud Gateway 整合 OAuth2.0 实现分布式统一认证授权!