【已解决】“Content-Security-Policy”头缺失

1、作用

简称CSP,意为内容安全策略,通过设置约束指定可信的内容来源,降低异源文件攻击,例如:js/css/image等

2、相关设置值

|-------------|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 指令名 | demo | 说明 |
| default-src | 'self' cdn.example.com | 默认策略,可以应用于js文件/图片/css/ajax请求等所有访问 |
| script-src | 'self' js.example.com | 定义js文件的过滤策略 |
| style-src | 'self' css.example.com | 定义css文件的过滤策略 |
| img-src | 'self' img.example.com | 定义图片文件的过滤策略 |
| connect-src | 'self' | 定义请求连接文件的过滤策略 |
| font-src | font.example.com | 定义字体文件的过滤策略 |
| object-src | 'self' | 定义页面插件的过滤策略,如 <object>, <embed> 或者<applet>等元素 |
| media-src | media.example.com | 定义媒体的过滤策略,如 HTML6的 <audio>, <video>等元素 |
| frame-src | 'self' | 定义加载子frmae的策略 |
| sandbox | allow-forms allow-scripts | 沙盒模式,会阻止页面弹窗/js执行等,你可以通过添加allow-forms allow-same-origin allow-scripts allow-popups, allow-modals, allow-orientation-lock, allow-pointer-lock, allow-presentation, allow-popups-to-escape-sandbox, and allow-top-navigation 策略来放开相应的操作 |
| report-uri | /some-report-uri | |

3、示例:

default-src 'self';只允许同源下的资源

script-src 'self';只允许同源下的js

script-src 'self' www.google-analytics.com ajax.googleapis.com;允许同源以及两个地址下的js加载

default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';多个资源时,后面的会覆盖前面的

4、在nginx配置文件中添加,例如:

add_header Content-Security-Policy "default-src 'self'";只允许同源下的资源

add_header Content-Security-Policy "upgrade-insecure-requests;content *";将本站内部http链接自动改为https,并不限制内容加载来源。

相关推荐
奶油话梅糖43 分钟前
打开项目 0.9 秒、内存只有 IDEA 的 1/12:OpenIDEA 用 Rust 把 IntelliJ IDEA 重造了一遍
java·rust·github·intellij-idea
vipxieliang1 小时前
语言对比卡:PHP vs Go vs Java 的优缺点、适用场景与「为什么选 PHP」
java·go·php
Rain的Java大神之路1 小时前
公交App上“还有2站,约5分钟”怎么实现?90%的人答错这道大厂面试题:GPS漂移、ETA不准、10万QPS热点读全拆透(附完整代码)
java·后端·面试
golang学习记1 小时前
IDEA 2026.3 远程开发迎来重磅升级
java·ide·intellij-idea·远程开发
天天被压力1 小时前
【A股分钟级高频数据完全手册 #04】指数分钟级行情数据接口:沪深指数Pro版最新分时取数
java·人工智能·python
敲代码的小小酥2 小时前
谈SpringMVC与Spring WebFlux的区别与适用场景
java·后端·spring
天天被压力2 小时前
【A股分钟级高频数据完全手册 #03】股票历史1分钟K线数据接口怎么用:Pro版批量拉取与本地缓存
java·人工智能·python
apcipot_rain2 小时前
C++转Java日记(02)
java·开发语言·c++
nice_lcj5202 小时前
【从零理解 Spring AI · 03】Spring AI 在 Spring 生态里的位置
java·spring boot·大模型·spring ai·ai应用开发
码农小河6612 小时前
基于SSM+JSP的高校专业信息管理系统【附源码+数据库】
java·开发语言·数据库