我正在通过ADFS在java应用程序中实现单点登录。 我只有ADFS URL,其metadata.xml.ADFS正在使用SAML。访问我没有的ADFS日志。我需要实现SSO,所以我只能从https发送请求?如何在tomcat上实现https如果可能通过Azure?也许我可以在Ubuntu上设置这个环境?我使用了非常多的示例,并且其中没有它们正在工作,通常,我从ADFS服务器得到响应,说“发生错误,请联系您的管理员”。有没有可行的教程?
答案 0 :(得分:1)
在SO上找到关于如何ADFS SSO启用Java应用程序的这个有用的帖子。希望这可以帮助。 的 强> 您的应用程序需要直接(从您的代码)或间接(例如通过反向代理,应用程序服务器上的SAML SP支持,......)充当SAML SP。 对于直接选项(需要对您的应用程序进行更多修改),您可以: •自己编写SAML SP代码(最有可能使用OpenSAML,您可以在现有产品的源代码中找到示例) •使用现成的产品集成到您的应用程序中,例如Spring SAML或OpenAM Fedlet 对于间接选项(需要对应用程序进行较少修改),您可以: •在Apache反向代理上使用Shibboleth SAML SP plugins(如果使用的话) •将SAML SP部署为容器上的另一个应用程序(例如Spring SAML或OpenAM)并使其与您的应用程序通信 - 因此SAML SP使用ADFS执行身份验证并将其传送给您的应用程序,例如:通过共享cookie或自定义令牌 您可以找到更多比较详情和注意事项in this thread。 ADFS 3应该支持OAuth授权服务器,它可能是一种更简单的集成方式,请参阅here和here。使用OAuth实现身份验证通常比SAML容易得多,没有相关的缺点。 的 强>