使用iframe呈现用户提供的html代码
我想在我的网站中嵌入用户提供的 HTML 代码。该代码将是自包含的,并将包含script和style标记。我计划使用Content Security Policy标头阻止来自提供的 HTML 代码的所有网络调用。代码将只能访问标准库,如 jquery 和其他标准资源(在 CSP 中将指定相同)。我想限制 iframe 内容和父域之间的任何通信。
我的计划是使用 an<iframe>来嵌入内容。用户将给出一个输入,然后在单击一个按钮时,iframe将使用给定的输入片段呈现。它将与页面的其他内容内联呈现。
我担心这对我网站的安全性的影响。
- 我可以制作 iframe 的原点
null吗?或者我是否必须将我的内容托管在单独的域中,以便 SOP 阻止对父页面的所有网络调用? - 我可以单独为 iframe 设置 CSP 吗?如果是,任何人都可以建议 CSP 应具有的所有属性吗?
- 我可以将输入的 html 直接从父页面注入到我的 iframe 中吗?
如果还有其他不使用的替代方案iframe,哪些是?