chrome插件教程5-了解csp网站安全策略

要了解csp. 得先知道这个玩意究竟是为了防范什么的. 首先csp的策略xss. 跨站脚本攻击. 这个也是网页危害最大, 最常见的网页安全漏洞. 而csp则是规定网页可以加载和执行哪些脚本和样式.
使用方式
首先. csp的使用方式分为两种. 一种通过header请求头输出. 大致如下

Content-Security-Policy: ....

另外一种方式则是通过meta标签来进行. 如下.

能限制什么
首先. csp可以限制js、image、css、web font,ajax 请求,iframe,多媒体等. 大致的支持的可以看一这里.
chrome的csp
chrome在25的时候就引入了csp策略. 在插件3版本的时候按照如下来使用
{ // 内容限制策略 csp "content_security_policy": {...}, // csp内容策略 embedder "cross_origin_embedder_policy": {"value": "require-corp"}, // csp打开策略 "cross_origin_opener_policy": {"value": "same-origin"}, }

这里的csp是严格版本. 只能支持如下的声明.
script-src: self|none|Anyurl object-src: self|none|Anyurl worker-src: self|none|Anyurl

其中,值的解释如下
self 允许来自相同来源的内(相同的协议.域名和端口) none 不允许任何内容 anyurl 允许加载指定域名下的内容

csp限制策略
在chrome直接按照如下的方式进行使用
"content_security_policy": { "extension_pages": "script-src 'self'; object-src 'none'" }

则允许加载本站的脚本, 禁止加载其他内容. 如果将script-src设置为none.则无法加载js.
最后
【chrome插件教程5-了解csp网站安全策略】请妥善使用csp. 防止自己的内容无法加载. 源代码

    推荐阅读