从Flex应用程序帮助Spring身份验证

时间:2011-02-04 01:09:49

标签: java flex soap spring-security

一些背景知识:我在HTML页面中嵌入了一个Flex应用程序,并使用Flex向我的Java后端发送soap请求,该请求根据在Flex表单中输入的用户名和密码进行一些身份验证。如果我输入正确的登录信息,一切正常,Flex应用程序可以继续提出进一步的请求。但是如果用户名/密码不正确,我的浏览器会弹出“需要验证”对话框,我的Flex应用程序将不会响应其正确的处理程序,直到我单击取消。我想以某种方式摆脱对话框,但我是春天安全的新手。

2 个答案:

答案 0 :(得分:0)

如果要滚动自己的身份验证(即不是HTTP身份验证,而是使用用户名和密码进行SOAP调用),则可以在spring上下文中实现HandlerExceptionResolver来解析Spring Security抛出的AccessDeniedException并正确返回SoapFault(a使用错误呈现SOAP信封的ModelAndView。根据浏览器的不同,您可能只发送结果代码为200的响应(这可以通过View完成),否则Flex将无法获取它(大多数浏览器都会使用HTTP正文并且不会将其传递给flash插件)。

参考:

答案 1 :(得分:0)

好吧,您应该通过Javascript处理来自服务器的身份验证响应。可以通过Page的Javascript调用Flex应用程序的某些方法。所以在你的处理程序中#39;您只需将您的身份验证响应传递给该方法即可。