保护 API 和 Keycloak

问题描述

我部署了一个独立的 Keycloak (KC) 服务器,并且我开发了一个 API,它用作资源服务器(它不应该处理用户登录/注册等)与 Spring Boot。我希望使用 KC JWT 令牌保护此 API。我希望每个来的用户都已经获得了 JWT 令牌。我在 API 的安全配置中添加了以下配置: spring.security.oauth2.resourceserver.jwt.issuer-uri=http://localhost:8180/auth/realms/<REALM_NAME>

一切都按预期进行,我的 API 只能允许经过身份验证和授权的用户调用端点。但是,我有以下问题:

由于我现在的配置是这样,任何从我的 KC 服务器和 issuer-uri 接收令牌的人都可以构建另一个 API 并做她/他自己的事情。如何限制 KC 服务器以便仅从我允许的 API 中使用?例如:我的 API 应该提供一个 client_name一个 client-secret,然后才被允许向发行者验证令牌。

我使用 spring-boot-starter-oauth2-resource-server 来配置 OAuth2,而不是 Keycloak 提供的。我正在运行 Spring Boot 2.4Spring Security 5Keycloak 12.0.4

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)