从Flex连接到自签名HTTPS Web服务

时间:2008-10-12 09:28:51

标签: flex actionscript-3 web-services https self-signed

在我的项目中,我需要连接到网内Web服务,但我们需要两台机器之间的SSL连接。 由于这是一个Intra-net站点,因此Web服务的证书可能是自签名证书。 Web服务和加载我的Flex应用程序的网页驻留在同一个Web服务器(tomcat)上,所以当我用HTTPS加载应用程序的网页时,我被要求确认证书,我确认了,但是这个确认不适用在Flex应用程序上(在Internet Explorer和Firefox上)。 我尝试了谷歌的Chrome,它实际上要求我两次确认,一次用于网页,一次用于连接到网络服务,因此效果很好。

有没有办法告诉Flash播放器也接受自签名证书是否完全与浏览器有关并且Adobe家伙对此无能为力? 换句话说,有没有办法从Adobe Flex ???

连接到自签名证书HTTPS Web服务

感谢。

4 个答案:

答案 0 :(得分:2)

当我戴上安全帽时,答案是我希望不是。我不希望浏览器插件绕过我的浏览器安全设置。我认为这是一个漏洞。

对于独立的Air应用程序可能有一种方法,但在浏览器中Flash应该遵循浏览器设置。

答案 1 :(得分:1)

在您的公司中,您可以创建自己的根CA,将其证书添加到将访问Intranet的所有计算机,然后让CA向您的Web服务颁发证书。证书将不再自签名。两个主要问题是:(1)管理CA的私钥,(2)将CA的根证书分发给客户端PC。

答案 2 :(得分:1)

您需要下载证书并将其安装在IE和Firefox上。

在IE上安装证书:

http://www.markwilson.co.uk/blog/2008/11/trusting-a-self-signed-certificate-in-windows.htm

在FF上安装证书:

转到“工具” - >“选项”,然后单击“加密”选项卡。单击“查看证书”,然后单击“导入”。

根据我的经验,证书必须经过验证或安装在浏览器中才能使Flash正常运行。证书还需要有一个有效的主机名,但如果您需要进行测试,则可以编辑客户端的主机文件。

答案 3 :(得分:1)

嗯,Flash播放器应该只使用浏览器建立连接并完成它。我们在这里有类似的设置。我们使用自制的证书,并通过HTTPS与AMF频道进行通信。我的猜测是,我们的设置不同,因为我们通过HTTPS通道加载Flash应用程序本身,因此它正在通过HTTPS与同一个HTTPS服务器进行通信。也许你可以尝试一下?这是我们的Tomcat服务器的设置:

Tomcat Server/Client Self-Signed SSL Certificate