上下文: 我们有一个我们无法控制的 OIDC IdP,但我们需要支持来自服务提供商 (SP) 的 SAML 请求以进行 SSO。
想法: 构建一个位于 SP 和 OIDC 身份提供者之间的代理(一个应用程序)。来自 SP 的请求被发送到代理应用程序(充当 SP 的 SAML IdP),代理应用程序将请求转换为 OIDC 请求并将它们转发给 OIDC 提供程序。OIDC 提供者的结果返回到代理应用程序,代理应用程序将它们转换为 SAML 响应并将它们转发给 SP。
问题:
我对 SAML IdP(实施方面)的了解非常有限。这种方法对我来说似乎很hackish :) 感觉有很多事情我需要考虑。所以,想要一些关于我做错了什么的帮助和指导。我想问的几件事是:
- 这种方法甚至有意义吗?
- 这种方法的安全影响是什么?
- 是否有其他更简单/更好的解决方案或类似的用例?
任何形式的帮助将不胜感激。
谢谢!