使用SAML在我的网络应用程序上实现SSO时,我遇到了一个问题。
成功登录后,我想重定向到我的应用程序的仪表板/主菜单。但是,它会被重定向到http://:/ IDBUS / first-idau / IDP-1 / SAML2 / SSO / POST。
流程是,我在浏览器中请求我的应用程序的上下文URL。在josso中,我已将其配置为重定向到atricore。然后请求标头发生变化,请求返回到我请求的同一个应用程序URL。现在我使用过滤器并将其重定向到JOSSO登录页面。所以这个单一请求登陆JOSSO登录页面。
当我提供凭据并登录时,然后JOSSO验证并设置用户主体并将请求发送到我的URL。在这里,我有一个过滤器转发到我的仪表板。 在此步骤中,我在JOSSO登录页面中提供身份验证信息后,而不是获取我的仪表板,它将被重定向到某个JOSS页面(http://:/ IDBUS / first-idau / IDP-1 / SAML2 / SSO / POST)在Atricore的OSGi包中。
当我调试时,我将HTTP标头看作“referer”。它指向上面的URL。我认为它应该指向我在josso-agent-config.xml中配置的应用程序的仪表板URL
我做了一个分析,发现了一些有趣的东西。在第1步中,我在我的应用程序中使用了一个过滤器来重定向到JOSSO登录页面。我没有这样做,而是允许完成请求。然后它会在我的应用程序中的页面中登陆。 现在在同一个会话中(在浏览器中),我手动向JOSSO登录页面发出请求。然后我得到了JOSSO登录页面(这是第2步)。然后我给了凭据并要求登录。现在它成功转发到我的应用程序的仪表板页面。
所以我的猜测是,我的过滤器应该有问题,我重定向到JOSSO登录页面。
我正在使用Atricore Identity Bus 1.0.0-m1 + JOSSO 1.8.2 + Spring 2.5.6.SEC01。请帮帮我。
答案 0 :(得分:1)
首先,我强烈建议您升级到上周发布的Atricore M2,可在此处找到:http://sourceforge.net/projects/atricore/files/Atricore%20Identity%20Bus/Atricore%20Identity%20Bus%201.0.0%20M2/atricore-idbus-1.0.0-m2.zip/download。此版本提供了大量修复和许多重要的增强功能,例如本机HA和可扩展性的开箱即用支持。
另外,请确保您使用的是上周发布的最终JOSSO 1.8.2位 - 而不是JOSSO 1.8.2 r1575,可从JOSSO网站(http://www.josso.org)获得。
然后,您应该部署参考标识设备,以实现包含JOSSO服务提供商和SAML2身份提供商的简单的基于SAML的联合SSO设置。请务必遵循快速入门:http://www.josso.org/confluence/display/IDBUS/Quick+Start
回到原来的问题,你看到的URI是因为JOSSO依赖于SAML2 IdP实体的身份验证请求(读取:AuthNRequest),在处理后,它返回传递身份验证断言的相应SAML响应。
最重要的是,在FSSO设置中,JOSSO Gateway关注点由Atricore IDBus中托管的身份提供商实现。 Atricore Identity Bus与JOSSO代理商合作很好(阅读:通过说“JOSSO”协议),同时引入基于标准的FSSO功能,并且不会强迫您投资将JOSSO合作伙伴应用程序改造为SAML。
希望这能为你的问题和一般主题提供一些启示。
此致 赞布罗塔。