安全沙箱(一):概述
术语:
资源发布者 (Resource Distributor ):
提供一个给定资源的一方。通常是一个服务器操作者 ,诸如一个网站管理员或套接字服务器管理员 。
资源创建者 (Resource Creator ):
真正创建资源的一方。对于.swf文件,资源创建者是编译.swf的ActionScript开发人员
。
用户 (User):
Flash Player运行的计算机的用户。
安全沙箱类型:
可通过 flash.system.Security.sandboxType 获取其值
- remote:来自远程范围的所有.swf
- local-with-filesystem
- local-with-networking
- local-trusted
安全沙箱类型可能禁止的外部操作类型:
- 本地内容
- 内容作为数据访问
- 交叉脚本控制
- 装载数据
- 连接一个套接字
- 发送数据到一个外部的URL
- 访问用户的相机和麦克风
- 访问本地共享的对象
- 上传或下载由用户选择的文件
- 通过一个.swf文件脚本控制一个HTML页面,反之亦然
- 连接一个LocalConnection频道
限制范围:
内容装载
:
可以使用 Loader
、Sound
和 NetStream
等这样一些类来加载内容
内容作为数据访问
:(读取一个内容资源的内部信息,例如,读取一张位图的像素
或者一段音频
)可以通过使用 Bitmap
对象、BitmapData.draw()
方法、Sound.id3
属性或者 SoundMixer.computeSpectrum()
方
法从加载的媒体内容中提取数据
交叉脚本控制
:
数据装载
:可以从使用 URLStream
、URLLoader
、Socket
和 XMLSocket
等类加载的外部文件
(如 XML
文件)中直
接访问数据
限定策略:
创建者允许 :一个.swf文件含有对恰当的Security 类的静态方法allowDomain ()的调用。
所有者允许 :意味着发布者使得恰当的跨域名政策文件可用 。
remote 安全沙箱
local-with-filesystem 安全沙箱
local-with-networking 安全沙箱
local-trusted 安全沙箱
套接字安全:
本地沙箱 :
远程沙箱 :