2013-08-26 26 views
3

我想开始一些孤立,它操纵我的网页中的特定区域。 为了达到这个目的,我通过SpawnDomUri函数创建了一个可以访问DomTree的隔离。 显然,一些恶意/错误的孤立可能会改变整个网页,这可能并不理想。SpawnDomUri:限制到特定的Dom-Node

所以我的问题是:

是否有可能限制一个DOM-隔离(这是通过SpawnDomUri开始)到特定的DOM节点(包括ShadowRoots)的访问?

最好的问候, 亚历

+0

你有成功吗?另请参阅此(我的)问题:http://stackoverflow.com/questions/24855276/loading-html-in-the-current-dom-and-execute-a-loaded-script – voscausa

回答

1

我不认为这是可能的。我曾经从MS看过一个实验,试图让这种沙箱化;但我不认为这是任何主流浏览器今天都有能力做的事情。

大多数人倾向于使用iframe以这种方式隔离它们(正确或错误!)。

0

我唯一想到的解决方案是使用非DOM隔离并在根隔离区上公开一个API,通过发送只显示/执行允许的调用的消息来访问该隔离区。
这当然非常麻烦,但丹尼说没有直接支持你的要求。

+0

应该有可能建立一个图书馆将繁琐的过程抽象出来。实质上,这就是pNaCl(Native Client)在Linux上所做的。它在一个进程中运行你的程序,该进程不能执行任何系统调用,除非读取和写入它可以访问的文件描述符。 Chrome会读取消息,评估是否允许请求什么,如果是,则会执行系统调用。 https://en.wikipedia.org/wiki/Seccomp – user7610

+0

有很多这是可能的,但有人必须实现它;-) –

+1

是的,这是臭名昭着的图灵tarpit。一切都是可能的,但没有任何兴趣是容易的。至少在我们有很多构建模块之前。看看氯化钠,它是多么复杂的野兽,还有多少人必须在它上面工作多少年才能将它变成现在的状态。做网页很容易,只是因为人们花费了十年半的时间来构建网页浏览器等等。 – user7610