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

AKZ*_*Zap 7 single-sign-on saml-2.0 openam

我尝试使用OpenAM通过以下链接在我现有的Web应用程序中实现SSO

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

PS.我的Web应用程序已经拥有自己的登录页面

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

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

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

小智 6

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

要获取当前用户的详细信息,只需更改您的OpenAM代理配置,以使用相关字段(如用户名,全名等)设置HTTP标头.然后,您只需检查HTTP标头而不是Web应用程序登录页面(只要只有通过OpenAM代理进入您的Web应用程序的路径).

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

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