推荐文章
Dor Moshe :
How Angular Protects Us From XSS Attacks?
推荐理由
XSS攻击是比较常见的网站攻击方式,Angular框架也考虑到了这点,专门做了一些处理。本文就Angular如何防御XSS攻击做了简单介绍。
文章概要
P.S. 本文不完全是原文的概要,顺便添加了笔者想表达的点,使得更加完整。
XSS是指用户通过给网站注入恶意代码,导致其他用户操作网站时,受到该代码攻击产生危害的行为。攻击通常是在用户输入内容,style,href,src等标签属性中进行。
Angular中可以插入html片段,绑定style,src,href属性等,这些是XSS攻击的潜在来源:
|
|
但是,Angular非常友好,默认情况下启动了XSS攻击的防御。所以,我们不需要担心。
问题是,当我们不需要XSS的时候,如何怎么解除Angular自带的过滤呢?
Angular给我们提供的一个叫DomSanitizer
的服务,提供的方法如下:
|
|
举个具体的应用例子:
|
|
应用效果如下:
另外,可以将该功能做成pipe,方便使用:
|
|
最后,要提醒一句,当你决定解除XSS检查的时候,请谨慎操作。
延伸阅读
本文首发知乎野草。如有不当之处,欢迎指正。