Keycloak向客户端进行身份验证并保持会话打开

时间:2018-11-21 10:30:27

标签: keycloak

我一直在努力使POC能够使用Keycloak进行SSO。

最简单的做法是,我们在nginx上有一个基于Web的反应前端,它与基于wildfly的resteasy后端进行通信,并希望在使用keycloak向后端提供SSO身份验证后,再使用它来登录Web前端,以及稍后将添加的其他后端服务。

keycloak github存储库中的“ cors”示例似乎是我们想要实现的最接近的示例,并且到目前为止,它一直是我进行实验的基础。因此,在2个客户端上为单个IP前端和后端设置了不同的IP地址。我遇到的问题是,即使每个请求中都存在JSESSIONID cookie,每次ajax请求都访问后端时,它都将启动一个新会话,但是我们需要保持一个会话活动并重新使用它。

我已经努力了几天来尝试找出我所缺少的东西,并且主要是在假设我需要向ajax请求中添加一些东西的情况下进行工作,但是到目前为止我一直无法弄清

任何想法,我可能会缺少什么,如何将cors示例转换为与基于会话的后端一起使用,或任何其他更符合要求的示例。

1 个答案:

答案 0 :(得分:0)

我认为它可以正常工作。我添加了httpProvider.defaults.withCredentials = true;并且现在似乎可以正常工作。

module.config(function($httpProvider) {
  $httpProvider.defaults.withCredentials = true;
  $httpProvider.responseInterceptors.push('errorInterceptor');
  $httpProvider.interceptors.push('authInterceptor');
});

我是否提到过我讨厌浏览器。 。 。