Angular DomSanitizer - SecurityContext.NONE

Posted

技术标签:

【中文标题】Angular DomSanitizer - SecurityContext.NONE【英文标题】: 【发布时间】:2017-11-05 09:08:08 【问题描述】:

官方 Angular Security Guide 谈到了 4 个安全上下文:html, Url, Style and Resource Url。 每个人都负责清理相应类型的资源。 另外DomSanitizer服务中有5个方法(每种资源类型)

 - bypassSecurityTrustHtml 
 - bypassSecurityTrustScript
 - bypassSecurityTrustStyle 
 - bypassSecurityTrustUrl
 - bypassSecurityTrustResourceUrl

但是,我没有在官方文档中找到任何提及 SecurityContext.NONE 的内容。它是代码中的does exist。

我假设它聚合了所有资源类型,这意味着被清理的资源可以是 HTML,其中包含样式和脚本。

是这样吗?有官方消息吗?

【问题讨论】:

【参考方案1】:

显然,如果我们将domSanitizer.sanitizeSecurityContext.NONE 一起使用,它将不会执行任何卫生操作,而will return 的值将保持不变。

因此,这将允许带有嵌入 URL、样式和脚本的 HTML。

因此强烈建议不要在您的代码中使用它。

【讨论】:

他们真的可以改进他们的文档... 太可怕了,这么久了还没有记录... 那……太可怕了。我原以为“无”的意思是“完全不受信任”,结果证明它的意思是“完全值得信赖”。

以上是关于Angular DomSanitizer - SecurityContext.NONE的主要内容,如果未能解决你的问题,请参考以下文章

Angular DomSanitizer 不绑定角度组件

angular 中嵌套 iframe 报错

使用 DomSanitizer 绕过安全性后,安全值必须使用 [property]=binding

Angular 2:我如何将指令应用于净化的 html/innerhtml

有没有一种在 Angular 7 中嵌入 iframe 的安全方法?

绕过 HTML 导入的安全性