当前位置: 首页 > 知识库问答 >
问题:

如何在现有web应用程序中实现openAM SSO

陶睿
2023-03-14

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

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

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

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

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

那么,有人能告诉我剩下的任务是什么吗?我需要修改我的应用程序的登录页吗?我是否需要任何数据库或数据存储来保存用户登录信息?

共有2个答案

巫马炫明
2023-03-14

我们能够使用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

-拉姆

奚卓
2023-03-14

现在,OpenAM代理已安装在您的应用程序顶部,您的web应用程序可以在假设已有有效登录用户的情况下工作-您需要从web应用程序中删除登录页面。

要获取当前用户的详细信息,只需更改您的OpenAM代理配置,以使用用户名、全名等相关字段设置HTTP头。然后,您只需检查HTTP头,而不是web应用登录页面(只要进入web应用的唯一路由是通过OpenAM代理的,就应该可以避免欺骗)。

另一种方法是获取OpenAM cookie,并使用它直接对服务器进行REST调用。但这会让事情变得更加脆弱,因为现在需要维护额外的配置。

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

 类似资料:
  • 我有一个网页,其中包含一个表格,你可以在其中编辑每一个单元格的内容。该表的典型大小约为12列40行。教师通常使用此页面编码我们区域的成绩。但我们的区域有时连接不畅,而且有时老师会丢失他们所做的编码(他们通常只在对所有内容进行编码后才保存)。 所以现在,我正在考虑实现一个autosave特性。我认为我想的解决方案很简单:每次编辑单元格然后失去焦点时,执行一个ajax请求来保存数据。至少我是这么想的。

  • 问题内容: 我有一个tomcat 7安装程序,上面部署了oldApp.war和newApp.war。这两个应用程序为数据库上的用户共享相同的登录凭据。 我可以分别使用和访问应用程序。 我的oldApp是一个Spring MVC Java应用程序,当用户登录到oldApp时,我想要一个链接,该链接会将用户带到newApp中,而无需输入登录凭据。 我想知道如何实施SSO。我最好不要运行任何外部服务来处

  • 问题内容: 我想创建一个安全的登录/注销机制。我开始阅读以下文章,以了解要考虑的事项: 正确,优雅地解决注销问题 再谈注销问题 这些文章提出了一些好处,但是我正在考虑使用与Yahoo邮件登录页面类似的方式使用HTTPS。您知道…键入http://mail.yahoo.com,然后将您重定向到HTTPS页面,例如** https://**login.yahoo.com/config/login,在其

  • 我的工作是实现一个表来显示即将到来的约会,其中我有一个if语句,我希望在该语句中实现,以防止显示旧的和不在当前时间框架内的数据。例如,约会前的昨天或几周不应该显示在jsp中? 我教过一个if语句,现在的代码是: 好吧,我对学习jsp和Java web开发的东西是相当新的,如果能得到这方面的帮助,我会非常感激。提前道谢。

  • 在Asp中打开Excel电子表格。net网页通过谷歌电子表格API。 实际上,我需要创建每个用户登录和基于一些问题的扩散表用户将在工作表中做一些操作,最后提交将保存在谷歌工作表的工作表。 然后,我可以阅读表格,评估答案给出的答案。 看起来很有挑战性。。。 任何帮助请?? 我关心显示谷歌表在webpage.something这样