我们有一组应用程序,在这些应用程序上,我们使用SAML和Keyclope作为身份提供者。这个设置帮助我们在15多个应用程序中实现SSO。几乎所有这些应用程序都是JSP+SpringWebFlow+SpringMVC,所以我们使用SAML,您的一个应用程序是Angular+REST,所以我们将OIDC与Key斗篷一起使用。
无论协议和技术如何,我们都能够在这些应用程序之间实现无缝SSO,因为我们的身份提供者是相同的。
今天,我们得到了一个新的更新,为了推动应用程序现代化,我们必须将JWT令牌传递给我们正在使用的所有关键内部后端服务,因为这样我们的后端调用也可以自己进行授权和身份验证。
对于使用OIDC的应用程序,只要用户登录,我就可以通过JWT。但对于支持SAML的应用程序,我现在还没有。
在这里,我可以想到一个解决方案,即将所有14个应用程序从SAML迁移到OIDC,但由于这些应用程序是基于JSP+SpringWebFlow+SpringMVC的,我不确定这是否可行。即使有可能,我认为迁移所有应用程序将是一个相当大的开销,因为这将需要对任何回归进行足够的测试。
如果您认为OIDC可以与JSP和基于Spring MVC/WebFlow的应用程序配合使用,那么您可以分享更多关于它的见解,因为在OIDC中,所有会话管理都是在客户端完成的,但在Spring MVC/WebFlow中,所有会话都是在服务器端维护的。
这里有人能给我一些更好的建议吗。无法逃避将JWT传递给后端调用的要求,因此我确实需要一些东西来实现这一点。