密钥斗篷忽略redirect_uri

问题描述

我们正在通过Keycloak实施SSO。当用户想要访问我们在 desiredUri 上的资源时,他会自动重定向到密钥斗篷登录页面{keycloakServerHostname}/auth/realms/{realmName}/protocol/openid-connect/auth?response_type=code&login=true&scope=openid&state={uuidOfStateForCSRF}&client_id={clientName}&**redirect_uri**={**desiredUri**}

然后显示一个登录表单,但是当我填写凭据并在Keycloa上发出提交请求的POST调用时,Keycloak的响应为302 FOUND,但是Location标头不包含我的 desiredUri + paramsForGettingTokens,但由 keycloakServerHostname + paramsForGettingTokens组成。

奇怪的是,当我手动将google.com放置到redirect_uri param时,它可以工作,并且位置标头指向google.com,但是一旦我将localhost,一些IP等放置在那里(公众无法解决) DNS),它将停止工作并开始忽略重定向uri。

看起来Keycloak正在使用某种DNS查找来验证重定向uri,并且当它无法解析该DNS时,它会将Keycloak的baseUrl放在那儿。

如何关闭此行为?

我的客户端设置非常简单: Keycloak settings screenshot

谢谢您的建议。

解决方法

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

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

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