【发布时间】:2017-03-30 03:50:34
【问题描述】:
我们通过遵循this 示例源代码,设法使用 Spring Cloud OAuth2 设置了一个 Web 应用程序,该应用程序实现了来自不同身份提供商(如 Facebook 和 Google)的单点登录。
计划拥有自己的身份验证/授权服务器,我们提供了自己的UserDetails 和GrantedAuthority,我们在其中关联了用户的 Facebook 和 Google。除了ROLE_USER,我们还有自己的用户权限集。
我们根据用户的角色保护我们的业务方法(我们使用@RolesAllowed)。当用户使用他们的 Facebook 和 Google 帐户登录时,只会添加 ROLE_USER 作为他们的权限。我想知道如何在登录外部身份提供者时从关联用户的GrantedAuthority 添加我们自己的用户权限,尽管我发现这可以使用AuthoritiesExtractor 完成,但找不到具体的例子。
【问题讨论】:
标签: spring-security oauth-2.0 spring-cloud spring-security-oauth2 spring-oauth2