来自本地 kubernetes 集群的 Keycloak 端口转发

Keycloak port-forward from local kubernetes cluster

我正在尝试将本地 Kubernetes 集群上的 Keycloak 运行 与 Spring Security OAuth 应用程序连接起来。当我使用 kubectl port-forward svc/keycloak 8080:8080 从 k8s 端口转发 Keycloak 时,我可以毫无问题地访问 Web GUI,但是当使用 Spring 安全授权时,它总是会抛出错误

Invalid token issuer. Expected 'http://localhost:8080/auth/realms/master', but was 'http://10.104.81.255:8080/auth/realms/master'

这是我在 Spring

中的 Keycloak 配置
keycloak:
  realm: master
  auth-server-url: http://localhost:8080/auth
  ssl-required: external
  resource: my-resource
  use-resource-role-mappings: true
  public-client: true

请告诉我如何设置它,以便我可以继续在本地开发。

注意:当 Spring 应用程序在集群中运行时,我改为端口转发那个应用程序,它显然工作得很好。

您似乎还没有为 Hostname provider 配置 frontendUrl。将它设置为 http://localhost:8080/auth,你应该没问题。