Flex UrlLoader请求需要SSL用户证书

时间:2012-04-26 19:47:24

标签: flex ssl ssl-certificate

我有一个Flex应用程序,可以访问需要SSL客户端身份验证的URL。这些请求在Firefox和Chrome中运行良好。 Chrome和Firefox会显示选择用户证书的提示,然后请求成功完成。在Internet Explorer中没有提示。请求返回:

  

错误#2032:流错误。网址:https://MyServer/Path/test.txt

我通过在index.html文件中创建一个标记来解决此问题,该标记将安全端点命中为空白JavaScript文件,提示输入证书。在加载空白JavaScript文件后,一切都在Flex应用程序中工作。这样做的问题是应用程序将遇到需要用户证书的多个端点;我不知道。他们不会有一个我可以加载的已知空白端点(我不想将他们尝试加载的URL放入脚本标记中,因为JS异常)。

有关如何让Internet Explorer在安全端点的初始请求中提示我获取用户证书的任何想法?

1 个答案:

答案 0 :(得分:0)

我没有测试过这个,但是你可以试试这个:

  • 使用ExternalInterface从您的Flex应用程序中调用一些JS。此JS将向您希望验证证书的网站发出请求。您可以通过示例在隐藏的iframe中加载网站的主页。

  • 收听iframe的“加载”事件,以便在加载iframe内容时通知flex应用(iframe.addEventListener('load', someFunction, false);)。再次,使用ExternalInterface通知Flex应用程序。

我希望它有所帮助。