flash 9.0.124版本socket的安全策略

关于flash 9.0.124版本socket的安全策略

在Adobe Flash Player升级到9.0.124后,由于安全策略的更改,使得在socket或xmlsocket的应用里,原先如用http方式加载安全策略的手段不 能继续使用了,类似此类应用必须使用xmlsocket://方式来提供安全策略。flashplayer的安全策略检测过程如下:

1,首先检测目标服务器的843端口是否提供安全策略
2,如果1没有检测到策略,则检测actionscript是否使用了Security.loadPolicyFile(xmlsocket://) 手段提供安全策略,如果还没检测到,则使用第3步检测
3,检测目标服务器目标端口是否提供安全策略

如果上述检测都不成功,则socket或xmlsocket则拒绝连接目标服务器。

请使用了socket 或xmlsocket的开发者尽早更换安全策略提供方式吧,否则新版flashplay用户就该不能正常使用你的应用了。

本人测试过第一种方法,这是3种方法里面最为简单的一种。用C#写一个socket服务,使用端口843。当检测到有套接字,就发送以下安全策略内容:
<cross-domain-policy><allow-access-from domain=\"xxx.com\" to-ports=\"8999\" /></cross-domain-policy>\0
记得后面加上\0,不然FLASH会以为数据没有接收完。一切OK。


此图为两个socket通信,其中下面那个就是提供安全验证的通信。
flash 9.0.124版本socket的安全策略_第1张图片

提供一些关于flash9的安全策略文章:
http://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html
http://www.adobe.com/devnet/flashplayer/articles/fplayer9_security_05.html#_Configuring_Socket_Policy
http://www.adobe.com/devnet/flashplayer/articles/flash_player9_security_update.html?devcon=f4

你可能感兴趣的:(应用服务器,socket,Security,Flash,Adobe)