gpt4 book ai didi

java - Spring Oauth2 单点登录 : Use Authority granted by AuthorizationServer

转载 作者:太空宇宙 更新时间:2023-11-04 13:39:59 24 4
gpt4 key购买 nike

我的设置是一个 AuthorizationServer,我在其中针对 ldap 进行身份验证。当我直接从授权服务器请求用户时他有一个特定的权限,具体取决于 LDAP 组。

当我在调试时查看ResourceServer中的Oauth2Authentication时,只有userAuthentication.details.authorities具有此权限。任何其他权限都设置为 ROLE_USER。

是否可以使用AuthorizationServer提供的用户权限?

如果我使用 spring.oauth2.resource.tokenInfoUri 来检索权限,它就可以工作。但我想使用 AuthorizationServer 提供的 UserDetails..

最佳答案

解决方案是创建一个自定义 UserInfoTokenServices 并按照我在 answer to a very similar question 中的解释提供它。 .

在此 UserInfoTokenServices 中,我能够从授权服务器的 /users 端点的响应中提取权限。

!!更新!!有了 Spring Boot 1.4.0,事情变得更加容易!

使用 Spring Boot 1.4.0 a PrincipalExtractor被介绍了。应该实现此类来提取自定义主体(请参阅 Spring Boot 1.4 Release Notes )。

如果仅与当局有关,您可以实现 AuthoritiesExtractor .

关于java - Spring Oauth2 单点登录 : Use Authority granted by AuthorizationServer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31323421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com