如何从Java与ADFS通讯?

我们有一个在CauchoResin上运行的网站。它主要是使用JSP用Java编写的。我们在网站上拥有自己的自定义身份验证。(我们没有使用任何第三方身份验证框架。)现在,我们希望支持使用SAML的联合身份验证。首先,IdP将运行ADFS,但是我的问题是关于SAML的。特别是,

使用OpenSAML,Shibboleth或某些其他Java兼容选项 ?

编辑:另一个选项将是OAuth。优点?缺点?

回答:

您的应用程序需要直接(从您的代码)或间接(例如,通过反向代理,应用程序服务器等对SAML SP的支持)充当SAML SP。

对于 (需要对应用程序进行更多修改),您可以:

  • 自己编写SAML SP的代码(很有可能使用OpenSAML,您可以在现有产品的源中找到示例)
  • 使用现成的产品将其集成到您的应用程序中,例如Spring SAML或OpenAM Fedlet

对于 (需要对应用程序进行更少的修改),您可以:

  • 在Apache反向代理上使用Shibboleth SAML SP插件(如果使用的话)
  • 将SAML SP部署为容器上的另一个应用程序(例如Spring SAML或OpenAM)并使其与您的应用程序通信-因此SAML SP通过ADFS执行身份验证,并将其通过共享cookie或自定义令牌与您的应用程序通信

您可以在此线程中找到更多比较详细信息和注意事项。

ADFS 3应该支持OAuth Authorization

Server,并且很可能是一种更简单的集成方式,请参见此处和此处。使用OAuth实施身份验证通常比SAML容易得多,并且没有相关的缺点。

以上是 如何从Java与ADFS通讯? 的全部内容, 来源链接: utcz.com/qa/416828.html

回到顶部