Keycloak 通过跳过登录页面进行KeyClope登录

Keycloak 通过跳过登录页面进行KeyClope登录,keycloak,openconnect,Keycloak,Openconnect,我有两种不同的应用程序:比如Application1和Application2 我已经将Application2与Key斗篷集成,并且我能够使用Key斗篷的登录页面登录到此应用程序 现在我想要的是,如果我登录到我的应用程序1(没有keydove),我应该能够调用keydove的一些API来登录到应用程序2(没有呈现keydove的登录页面) 可行吗?如果是,如何进行 我们将非常感谢您的帮助 感谢TLDR;不,这是不可能的。 您可以登录到KeyClope并通过API为用户获取访问令牌,但它只能用于

我有两种不同的应用程序:比如Application1和Application2

我已经将Application2与Key斗篷集成,并且我能够使用Key斗篷的登录页面登录到此应用程序

现在我想要的是,如果我登录到我的应用程序1(没有keydove),我应该能够调用keydove的一些API来登录到应用程序2(没有呈现keydove的登录页面)

可行吗?如果是,如何进行

我们将非常感谢您的帮助


感谢TLDR;不,这是不可能的。

您可以登录到KeyClope并通过API为用户获取访问令牌,但它只能用于代表用户调用Application2上的API。因此,如果您不打算显示Application2UI,并且用户将在Application1中看到Application2API调用的结果,这将非常有用

原因是Keyclope和其他SSO解决方案一样,使用cookies跟踪SSO会话。因此,如果您的用户登录到Application2,他/她将在其浏览器上安装KeyClope SSO cookie。因此,当用户第一次访问Application1时(如果Application1与KeyClope集成),因为它没有会话,他/她会被重定向到KeyClope登录页面,Keyclope会注意到SSO cookie存在并且有效,因此会将用户视为登录用户,不会呈现任何登录UI,只会将其重定向回Application1


您无法通过API访问该KeyClope cookie,即使可以,也无法在用户的KeyClope域浏览器上设置它。

感谢@zaerymoghaddam的回复。关于如何在当前使用带restful服务的SpringWeb5.0堆栈构建的应用程序中实现KeyClope的任何指针。