用于多个 Web 应用程序的单个 SAML SP

Single SAML SP for multiple web applications

我能够使用 Spring Saml Extension. I just went through 在 java Web 应用程序(而不是 Spring)中使用 ADFS 实现单点登录。它说:

For Indirect Options... deploy SAML SP as another application on your container (e.g. Spring SAML or OpenAM) and make it communicate with your application - so SAML SP performs authentication with ADFS and communicates this to your application e.g. through a shared cookie, or a custom token

我们具体需要做什么?据我了解,这是基于浏览器的 SSO,其中每个 Web 应用程序都需要使用 Spring saml 插件与 ADFS 进行交互。如果我错了,请纠正我。我们如何将 SAML 令牌从一个 SP 传递到多个应用程序?

提到的 post 实际上混合了基于标准的 WebSSO (SAML) 和专有的 WebSSO(例如 OpenAM)。没有 SAML 断言传递给其他 WebApp,但 WebSSO 的实现方式不同。对于 OpenAM,这是通过 SSO 跟踪 cookie 实现的。

你是正确的,当仅使用 SAML 时,每个应用程序都必须充当 SAML SP(例如,使用 Spring 基于 Java 的网络应用程序的安全 SAML 扩展或 simpleSAMLPHP对于基于 PHP 的网络应用程序)。

或者,您可以将所有其他应用程序部署在 HTTP 反向代理后面,其中反向代理充当 SAML SP(例如 OpenIG)