如何在我现有的Web应用程序中实现openAM SSO

时间:2013-05-07 08:22:56

标签: single-sign-on saml-2.0 openam

我尝试使用OpenAM在我现有的Web应用程序中实现SSO,请参阅以下链接

http://fczaja.blogspot.com/2012/06/idp-initiated-sso-and-identity_21.html

PS。我的网络应用程序已经有了自己的登录页面

现在实现后得到的是,openAM登录页面在我的Web应用程序中受到保护,我需要再次登录我的应用程序

我需要的是,想跳过我的应用程序的登录页面成为单点登录。

所以,谁能告诉我我需要做什么工作呢? 我是否需要修改我的应用程序的登录页面? 我是否需要任何数据库或数据存储来保存用户登录信息?

2 个答案:

答案 0 :(得分:6)

现在OpenAM代理已经位于您的应用程序之上,您的Web应用程序可以在假设已经存在有效登录用户的情况下工作 - 您需要从Web应用程序中删除登录页面。

要获取当前用户详细信息,只需更改您的OpenAM代理配置,以使用相关字段(如用户名,全名等)设置HTTP标头。然后,您只需检查HTTP标头(不应该像欺骗一样安全)进入您的Web应用程序的唯一途径是通过OpenAM代理进行的。

另一种方法是获取OpenAM cookie并使用它直接向服务器发出REST调用。使事情变得更脆弱,因为你现在需要维护额外的配置。

您的Web应用程序不一定需要任何其他用户表/数据存储区,只有当您需要将其登录名映射到您的Web应用程序正在执行的操作时(保存首选项等),在这种情况下您需要检查您的应用中已存在的用户名是否已存在。如果没有,那就添加它。

答案 1 :(得分:2)

我们能够使用OpenAM和使用Spring SAML扩展和Openam的JSF Web应用程序实现单点登录。 我们使用fedelet代替代理,我们可以移植到ant应用服务器

请参阅我的文章,了解与Openam概念相关的一般信息 http://reddymails.blogspot.com/2013/03/sso-for-java-or-net-web-based.html

使用Spring SAML扩展和Spring Security将JSF 2 Web应用程序与Openam集成的步骤。 http://reddymails.blogspot.com/2013/06/integrating-jsf-web-applicataion-with.html

-RAM

相关问题