在 Adobe 上公布了将在4月份改变 FLash Player 9 的安全策略。(Preparing for the Flash Player 9 April 2008 Security Update)
这次的改变纯粹是为了安全,没有增加任何的新特性。但是默认的策略发生了一些改变,有可能会导致现有的一些程序无法正确地工作。
javascript 协议的改变
在以前,loadMovie() 里可以使用 javascript:... 的形式,但新的版本里只在 getURL()、navigateToURL() 和 ExternalInterface 里支持 JavaScript。
allowScriptAcces的变化
allowScriptAccess 是指定从 swf 访问 HTML 里的 Script 的方式的属性。以前的 Flash player 对于版本7以下的 swf 的 allowScriptAccess 属性的默认值为 always,版本8以上的默认值为 sameDomain。
但新的版本对所有的版本的 swf 的默认值都将变为 sameDomain。版本7以下的 swf 必须明确地指定 allowScriptAccess = always。
传送 HTTP Header 时的变化
使用 XML.addRequestHeader()、LoadVars.addRequestHeader()、URLRequest.requestHeaders 可以添加 HTTP 请求的 Header。在新的版本里向非同域名的服务器发送请求并添加 Header 时先必须要取得服务器的的许可。
具体的是需要在服务器上的 crossdomain.xml 添加添加以下项目:
<allow-http-request-headers-from domain="www.example.com" headers="HeaderName"/>
Socket 连接服务器时必须使用安全策略文件
XMLSocket 与 Socket 连接服务器的安全策略将会更严。新的版本在连接同域名时也需要使用安全策略文件,并且请求安全策略文件的端口固定为843。
![[Google]](http://www.google.com/logos/Logo_25wht.gif)
![[Synchronous Space]](http://weihe924stephen.googlepages.com/syncspace-banner.jpg)
![[Creative Commons License]](http://i.creativecommons.org/l/by-nc-sa/3.0/88x31.png)
![[Add to Google]](http://buttons.googlesyndication.com/fusion/add.gif)
![[Aggregated by MXNA]](http://weblogs.macromedia.com/mxna/images/mxna88x31.gif)
![[Flex.org]](http://www.flex.org/images/flexorg.gif)
![Validate my Atom 1.0 feed [Valid Atom 1.0]](http://validator.w3.org/feed/images/valid-atom.png)
![Validate my RSS feed [Valid RSS]](http://resource.googlecode.com/files/valid-rss.png)
![[I heart FeedBurner]](http://www.feedburner.com/fb/images/pub/i_heart_fb.gif)