2010-07-03 93 views
3

对于一个项目,可以让开发人员添加他们自己的Javascript应用程序,我需要限制Javascript的范围到某个div。例如,每个开发人员都可以访问他们自己的div。限制对Javascript中某些元素的访问

<div id="md5_of_a_salt_and_app_id"> 
    <script> 
     /* This area should not be able to modify window element 
     * or other divs than parent one 
     */ 
    </script> 
</div> 

有没有这种可能性?

在此先感谢。

回答

5

有两个著名的可能性:

Google Caja

卡哈是 谷歌项目的基础上, 对象能力的原则“虚拟I帧” 。 Caja需要 JavaScript,HTML和CSS输入以及 将其重写为HTML 和CSS的安全子集,以及没有自由变量的单个JavaScript 函数。也就是说 装置的唯一方式这样的功能可以 修改对象是,如果它被给予一个 参照对象由主机 页。

Adsafe

的称为AdSafe 子集块从 脚本访问任何全局变量或从 直接访问文档对象模型 或其任何元件的。相反, ADsafe为脚本提供了 ADSAFE对象的访问权限,该对象由 页面的服务器提供,给访客代码的DOM元素和 间接访问 其他页面服务。

请注意,Adsafe不会修改脚本,而Caja会这样做。

+0

感谢您的回答,我认为我们会使用ADsafe或ADsafe上编写的API。 – kubilayeksioglu 2010-07-04 23:08:57

相关问题