是否有一种方法可以限制iframe,使其只能访问白名单上的网址,而不能访问黑名单上的网址?
我意识到这是不正常的,但是我有一个相当复杂的用例:
iframe可以由用户提供。它可以包含javascript并可以对数据进行操作。通过安全通信功能为iframe提供了来自其他用户的数据。
iframe现在可以对数据执行操作并将其吐回去。
在大多数情况下,iframe会做一些有用的事情,但是如果iframe中的代码创建者是恶意的,则存在安全隐患:
尽管iframe确保用户的浏览器不会执行任何不必要的操作,但是仍然存在另一个问题:
没有任何方法可以阻止包含恶意代码的iframe将用户提供的数据发送到外部服务器。
理想情况下,用户应该能够将受信任的外部服务器设置为白名单,如果iframe尝试联系其他任何设备,则会被拒绝。
是否可以通过直接修改iframe来做到这一点?
如果没有,我将需要添加一个中间人:将iframe设为一个完整的沙箱,并使其仅与主要网站进行通信,该网站将决定是否中继邮件。但是,如果我走这条路,那么即使是简单的加载css文件的请求也需要像这样间接处理,这意味着我的用户需要做更多的工作。