Angular 8 DomSanitizer 白名单?

Angular 8 DomSanitizer whitelist?

我在我的网页中使用 angular(8),并希望将多个 iframe 显示为 innerHTML

默认情况下,angular domsanitizer 会删除有风险的元素。我知道我可以使用 bypassSecurityTrustHtml 函数等来禁用它。 (https://angular.io/api/platform-browser/DomSanitizer)

然而,由于内容将由用户生成,我不能简单地绕过 Domsanitizer,因为它风险太大。但是我想知道是否可以允许某些已知的域,例如我自己的域。 因此,我需要为 Sanitizer 提供某种带有安全域的白名单。 Google 到目前为止 return 没有任何有用的东西,所以我想知道: 这可能吗?如果可以,我该怎么做?

我认为在 Angular 中很难做到这一点,除非您实现自己的 DomSanitizer。基于允许您定义 whilelist 的源代码 here, the iframe is not in whiltelist. The filtering rule seems not possible to extend. I suggest you did the filtering here by your self, or using some third-party lib like js-xss