JS沙箱安全策略解决方案
时间:2012-2-12
有些安全措施因浏览器而异,或者需要三思而后执行之,比如使用数字签名来标记一个脚 本,一个签名了的脚本可以绕过很多与JS相关的沙箱安全策略,包括同域策略,它与浏览器和访问权限有关.例如,在使用Ajax开发时,有时服务器应用与引发此请求的Web页面不在同一个哉中,这时,开发人员就会使用这种方法来实现与服务器应用的通信.
签名脚 本的局限性在于这一概念缺少普遍的支持,Mozilla/firefox支持签名脚本,但IE不支持,IE只支持签名控件.其它浏览哭喊也不支持签名脚本,对于大多数因特网应用来说,这一限制足以使这一概念变得不可行.
而大多数Javascript开发人员所依赖的是安全策略,对于所有Javascript的应用来说,安全策略是与生俱来的,不是专属于一种特定浏览器的特殊方法,与其他的语言不同,在Javascript的关键元素之中,没有文件访问的功能,不能从操作系统中打开,创建或者删除文件.只有一些低层次的网络功能,比如加载一个Web页面,不允许Javascript引发指向其它站点的连接,也不许在用户没有察觉的情况下传输数据.