Keycloak 中的 Spring 授权服务器集成用于授权代码流程

问题描述 投票:0回答:1

我有一个要求,需要将 Keycloak 设置为与 Spring 授权服务器的联合来授权和验证用户。

场景 1:使用 Spring Boot 2.5.4 和 Spring Authorization Server 0.2.0 与 Keycloak (15.0.2)

  1. 使用postman,发出Oauth2.0授权请求,提供Keycloak中配置的客户端、授权、token端点。

  2. 客户端重定向到 Keycloak 登录屏幕,显示通过 Spring 授权服务器(充当辅助 OIDC 提供商)登录的选项。

  3. Spring Auth Provider 的登录屏幕。输入登录名。服务成功进行身份验证,但无法对 keycloak 进行后回调,并显示“999”错误代码。 Spring Security lib 中似乎有一个缓存请求,该请求指向 /error 并作为参数发送redirectionurl。在安全配置中定义 successurl 并不能解决问题。

场景 2:使用 Spring Boot 3.1.1 和 Spring Authorization Server 1.1.0 与 Keycloak (15.0.2)

  1. 使用邮递员进行相同的测试。这次,在Keycloak登录页面通过辅助OIDC提供商登录,会抛出400错误。没有更改任何其他配置。

期望 keycloak 从 Spring Auth Server 获取访问令牌,合并并将其返回给邮递员。

有人可以建议吗?

spring spring-security authorization keycloak spring-authorization-server
1个回答
0
投票

您可以完全删除keyclock,因为spring授权服务器还提供联合登录您可以检查以下提交id 我们使用这个版本已经一年多了,与键盘时钟相比,它更好、更方便。此版本的 spring 授权服务器使用 springboot 3 和 jdk 17

https://github.com/spring-projects/spring-authorization-server/issues/1208

© www.soinside.com 2019 - 2024. All rights reserved.