内容安全策略 (CSP) 是一个额外的安全层,用于检测并削弱某些特定类型的攻击,包括跨站脚本 (XSS) 和数据注入攻击等。无论是数据盗取、网站内容污染还是散发恶意软件,这些攻击都是主要的手段。
限制方式
- Content-Security-Policy: ‘default-src’
资源类型
'Content-Security-Policy': 'script-src \'self\'; form-action \'self\'; report-uri / report
示例1:
1 | <body> |
1 | // server.js |
翻译如下:
拒绝执行内联脚本,因为它违反了以下内容安全策略指令:
“default src http:https:”
。启用内联执行需要'unsafe inline'
关键字、哈希(’sha256-xJp4geNUJc5rDVZYqTCUjlJPY+PLCwP17ykLBIxZjH8=’)或nonce(’nonce-…’)。另外请注意,没有显式设置“script src”,因此使用“default src”作为回退。
现在我们修改server.js内容=>我们不想让https/http加载,只想让hello.js加载,我们需要加self
1 | // server.js |
我们这时候可以在self后再加上www.baidu.com就可以加载https://www.baidu.com了
1 | //server.js |
示例2:report-uri / report
我们来试试report-uri / report
1 | //server.js |
不仅仅可以在服务器端设置,我们也可以在html中设置
1 | <!-- index.html --> |