我有一个公共和私人区域的GWT应用程序,我想连接到Keycloak 3.4
但有一种情况不起作用。如果登录到同一领域的另一个应用程序,然后打开带有http://localhost:8080/AppName/的新浏览器选项卡,则应用程序将打开公共区域。这可以。 然后,我点击链接到http://localhost:8080/AppName/sso/login
的应用程序中的登录按钮现在出现问题,以下两个网址(具有不同的状态参数)的无限循环开始:
这在本地发生,因此没有代理。它独立于浏览器。 在keycloak中有一个为 AppName 客户端创建的会话,所以问题似乎出现在客户端代码中。
直接在新标签中调用网址http://localhost:8080/AppName/sso/login而不使用http://localhost:8080/AppName/之前打开应用程序,没有问题,我直接登录。
作为Keycloak适配器,我在应用程序中使用此库:https://github.com/realityforge/gwt-keycloak
我正在解决这个问题好几天,非常感谢你的帮助!提前谢谢......
添
答案 0 :(得分:0)
它看起来像是一个浏览器(前端)应用,您正在使用授权代码流(response_code=code
)。这对于浏览器应用来说并不常见且安全。您应该将库/ app配置为使用隐式流(response_code=id_token
)。