我想知道 Web Worker 是否是对不受信任的 JavaScript 代码进行沙盒处理的安全方法。例如,在绘图应用程序的上下文中,开发人员可以在其中实现新的绘图工具,您可以将他们的代码放入 webworker 中,并且每当用户单击 Canvas 时,向他们发送包含光标位置的 JSON 消息,以及图像数据数组,当脚本完成时,它会传回一条包含新图像数据的消息。
这是否安全,或者是否存在我没有想到的风险?
最佳答案
DOM 对 Web worker 不可用,但可以访问同源内容,例如 indexedDB
。请参阅我的相关问题:
Can workers be secure enough for an untrusted code
安全的方法是使用 iframe 的 sandbox
属性:
http://www.html5rocks.com/en/tutorials/security/sandboxed-iframes/
另请查看我的库,它简化了流程并提供了与沙箱的便捷连接(功能导出而不是消息传递):
关于javascript - Web Workers 是一种安全的方式来沙盒不受信任的 JavaScript 代码吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16600607/