我正在实现Spring Security登录,我正在尝试理解一些东西,这是我想要实现的场景:
实现表单很容易,但是我如何使弹出窗口工作-假设我在会话过期后向一些受保护的URL发出请求,我如何确保它没有转发到登录页面,而是转发到显示弹出窗口的登录处理程序?
另一个问题-我需要与SiteMinder集成,所以我需要读取登录/密码组合,读取后转发到SiteMinder进行身份验证,完成后我想返回而不转发。
对SiteMinder问题的回答:Siteminder通常安装在servlet容器后面的Web服务器上。此外,Siteminder管理身份验证,应用程序根本无法访问用户密码。要与Siteminder集成,请使用以下过滤器:http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity-single.html#d0e6295.
回答弹出式登录问题:由于您需要与Siteminder集成,我不建议通过弹出式登录实现登录。
上面springsource网站上给出的示例非常原始,可以在几个用例中中断。单独使用SM_USER
标头有几个注意事项,请参阅我的答案:如何在siteminder的Spring Security预认证中验证SM_USER标头
CASSO又名SiteMinder,以及其他传统的html表单请求响应SSO系统,很难处理单页应用程序并保护您通过AJAX调用的Web服务,而不会中断应用程序的流程。