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

Single sign on 如何在现有web应用程序中实现openAM SSO,single-sign-on,saml-2.0,openam,Single Sign On,Saml 2.0,Openam,我试图通过使用OpenAM在我现有的web应用程序中实现SSO,请参考以下链接 我的网络应用程序已经有了自己的登录页面 现在实现后得到的是,openAM登录页面在我的web应用程序中受到保护,我需要再次登录到我的应用程序 我需要的是,我想跳过我的应用程序的登录页面,成为单点登录 那么,有人能告诉我我还需要做什么吗? 我需要修改我的应用程序的登录页面吗? 我需要任何数据库或数据存储来保存用户登录信息吗?现在应用程序顶部有了OpenAM代理,您的web应用程序可以在已经有有效登录用户的假设下工作-

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

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

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

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

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

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

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

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


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

我们能够通过使用Spring SAML扩展和openam的JSF web应用程序使用openam实现单点登录。 我们不使用代理,而是使用fedelet,这样我们就可以移植到ant应用服务器

请参阅我有关Openam概念的一般信息的文章

使用SpringSAML扩展和SpringSecurity将JSF2Web应用程序与Openam集成的步骤。

-公羊