我们使用keycloak 3.4.2尝试集成SSO行为(通过SAML)。我在同一个领域配置了两个客户端;如果用户登录到clientA并且他在同一浏览器中打开一个新选项卡并登录到clientB,则表示他已成功自动登录。
但我们正在尝试整合以下行为: - 从ipad用户打开safari并进入网站A. - 他成功登录到网站A. - 从网站A点击“通用链接”,打开之前安装的应用,这只是网站B的网页浏览。
当前结果是用户登录应用的登录页面。
预期结果是用户自动登录的。
我们正在使用iOS 11作为前端。站点A和站点B都有一个用Java6编写的后端。
我们的想法是通过使用iOS小部件“SFAuthenticationSession”,将站点A中的所有cookie重用到具有站点B的webview的应用程序;但是一旦登录,唯一可用的cookie就是JSESSIONID,我认为这还不够。 在我的测试中,当我只使用具有不同选项卡的浏览器时,对于每个不同的选项卡,我有一个不同的JSESSIONID,所以当我登陆到站点B时,我希望有一个不同的JSESSIONID。
我们的方法取自当前的源代码:
https://github.com/dvdhpkns/SFAuthenticationSession-example
那么我们可以做些什么来完成我们的任务呢?
我们缺少什么?我们还需要其他令牌/饼干吗?如何检索它们?什么时候?
我希望我清楚地解释了问题,对不起,但身份验证问题不是我的强项。