Spring Security OAuth resourceserver只能通过issuer-uri配置自己

jucafojl  于 2023-10-20  发布在  Spring
关注(0)|答案(1)|浏览(300)

我正在使用Docker部署一个应用程序:

  • 一个终止SSL的nginx容器
  • Keycloak容器
  • Sping Boot OAuth资源服务器。

我有以下配置:

security:
    oauth2:
      resourceserver:
        jwt:
          issuer-uri: https://example.com/realms/petclinic

这很好,但是如果我想使用自签名的SSL证书部署应用程序,那么Sping Boot 容器就不能再通过https://连接到Keycloak。我无法控制人们使用什么证书来使用应用程序。
我不能将issuer-uri更改为http://地址,因为当最终用户使用时,令牌将无法验证,因为Keycloak主机仍然是https://example.com/realms/petclinic
我想知道是否有一个选项可以允许Sping Boot OAuth resourceserver始终通过本地Docker http://keycloak地址连接和配置Keycloak本身?
似乎issuer-uriresourceserver自动配置是耦合在一起的,我不认为Keycloak Java适配器是这样的。

92vpleto

92vpleto1#

使用issuer-uri还向JWT解码器添加了一个颁发者验证器。
您可以使用jwk-set-uri代替(没有颁发者验证)或作为issuer-uri的补充(当您想要颁发者验证但无法从颁发者URI获取OpenID配置时)

相关问题