web开发中的安全和防御入门——csp (content-security-policy内容安全策略)

news2024/11/15 17:44:22

偶然碰到iframe跨域加载被拒绝的问题,原因是父页面默认不允许加载跨域的子页面,也就是的content-security-policy中没有设置允许跨域加载。

简单地说,content-security-policy能限制页面允许和不允许加载的所有资源,常见的包括:

  • iframe加载的子页面url
  • js文件
  • 图片、视频、音频、字体等资源

设置content-security-policy有两个途径:

  1. 通过请求头设置(http header)
  2. 在html中head > meta设置

使用中注意:

  • 1比2的优先级高,也就是浏览器优先使用请求头的配置
  • content-security-policy各配置项默认使用default-src指令的值,该指令默认是不限制的

defalut-src

csp配置可以有效阻止跨站脚本攻击(xss),而且用起来也不麻烦,可以作为一个开发中的日常习惯。

具体使用方式就不赘述了,感兴趣的可以看下面的参考页面。

参考

  • Content Security Policy 入门教程 —— 阮一峰
  • 内容安全策略(CSP)—— MDN
  • CSP常用配置项(指令)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/823677.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3DEXPERIENCE用户角色 | Structural Performance Engineer 结构性能工程师

- 3DEXPERIENCE 用户角色 - 快速、真实和准确的仿真 推动产品工程创新并促进协作 通过 Structural Performance Engineer,您可以在基于云的 3DEXPERIENCE 平台上执行结构静态、频率、扭曲、模态动态响应,以及零件和装配体结构热仿真。 亮点 与 SOLIDW…

统一观测|借助 Prometheus 监控 ClickHouse 数据库

引言 ClickHouse 作为用于联机分析(OLAP)的列式数据库管理系统(DBMS), 最核心的特点是极致压缩率和极速查询性能。同时,ClickHouse 支持 SQL 查询,在基于大宽表的聚合分析查询场景下展现出优异的性能。因此,获得了广泛的应用。本文旨在分享阿…

【Golang】基于录制,自动生成go test接口自动化用例

目录 背景 框架 ginkgo初始化 抓包&运行脚本 目录说明 ∮./business ∮./conf ∮./utils ∮./testcase testcase 用例目录结构规则 示例 实现思路 解析Har数据 定义结构体 解析到json 转换请求数据 转换请求 转换请求参数 写业务请求数据 写gotest测试…

K8s总结

K8s 是什么 Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的机制…

【从零开始学习JAVA | 第三十五篇】IO流综合练习

目录 前言: 1.拷贝文件(含子文件) 思路: 2.文件加密 思路: 3.修改文件中的数据: 思路: 总结: 前言: 在前面我们为大家介绍了FILE类和IO类。这篇文章我们来练习一…

SQL SERVER 中将数据表中的字段按分隔符分成多行多列

SQL SERVER 中将数据表中的字段按分隔符分成多行多列_sql按逗号拆分列为多行_帅气的苹果果的博客-CSDN博客 SELECTa.name,monitors SUBSTRING ( a.monitors, b.number, charindex( ,, a.monitors ,, b.number ) - b.number ) FROM( SELECT name, monitors FROM [dbo].[ssm_vi…

Packet Tracer - 连接有线和无线 LAN

Packet Tracer - 连接有线和无线 LAN 地址分配表 设备 接口 IP 地址 连接到 云 Eth6 N/A Fa0/0 Coax7 N/A Port0 电缆调制解调器 Port0 N/A Coax7 Port1 N/A 互联网 Router0 控制台端口 N/A RS232 Fa0/0 192.168.2.1/24 Eth6 Fa0/1 10.0.0.1/24 Fa…

安科瑞智能照明系统在医院智能建筑中应用的优势

摘要:现阶段,我国的社会经济的发展水平不断提高,为智能照明系统的发展带来了新的契机。文章主要介绍了几类智能照明系统,分析了其优点,并介绍了智能照明系统在医院建筑中的具体应用,具有一定的参考价值。 …

屏幕取色器Mac版_苹果屏幕取色工具_屏幕取色器工具

Sip for Mac 是Mac系统平台上的一款老牌的颜色拾取工具,是设计师和前端开发工作者必不可少的屏幕取色软件,你只需要用鼠标点一下即可轻松地对屏幕上的任何颜色进行采样和编码,并将颜色数据自动存到剪切板,方便随时粘贴出来。 Sip…

Linux|ubuntu下运行python

参考:ubuntu系统下切换python版本的方法 文章目录 python版本问题查看ubuntu下的所有python版本通过apt-get install可以安装不同版本python查看python版本号更新update-alternatives替代列表查看update-alternatives下的python版本切换python版本删除python版本 p…

Windows7+内网, 安装高版本nodejs,使用vite+vue3+typescript开发项目

前言:vite只支持高版本的nodejs,而高版本的nodejs只支持windows8及以上,且vite还对浏览器版本有兼容问题。以下均为vite官网截图 1、安装好低版本的nodejs win7系统建议安装13.及以下,我的是12.12.0这个版本。nodejs低版本官网下载…

20- C++ STL标准模板库-8 (C++)

第十章 10.1 基本概念 STL(Standard Template Library,标准模板库)是惠普实验室开发的一系列软件的统称。现然主要出现在C中,但在被引入C之前该技术就已经存在了很长的一段时间。 STL的从广义上讲分为三类:algorithm&#xff0…

【NLP初级概念】 01-稀疏文档表示(第 1/30 部分)

一、介绍 自然语言处理(NLP)是计算方法的应用,不仅可以从文本中提取信息,还可以在其上对不同的应用程序进行建模。所有基于语言的文本都有系统的结构或规则,通常被称为形态学,例如“跳跃”的过去时总是“跳跃”。对于人类来说,这种形态学的理解是显而易见的。 在这篇介…

kafka总结

Kafka是一种高吞吐量的分布式发布订阅消息系统(消息引擎系统),它可以处理消费者在网站中的所有动作流数据。 消息队列应用场景 缓存/削峰 :处理突然激增的大量数据,先放入消息队列,再按照速度去处理, 解…

技术等级 TRL 定义

“不同环境、不同目标下TRL表述不一样” 技术等级 TRL 定义 TRL1 基本原理提出和发现 TRL2 技术应用研究 TRL3 完成概念验证,如叶栅试验、燃烧室头部试验等 TRL4 完成模拟部件试验.如压气机性能试验,燃烧室扇形试验 TRL5 完…

3ds MAX 绘制喷泉

首先绘制一个小圆柱体当做喷头: 在粒子系统内选择【超级喷射】,并设置对应的参数: 轴和平面的扩散代表了我们看到的水柱能占据多大的面积 另外比较重要的参数是粒子运动和粒子计时 前者是粒子移动的时间也就是喷射的速度 后者代表了喷射出的…

渗透测试:Linux提权精讲(三)之sudo方法第三期

目录 写在开头 sudo jjs sudo journalctl sudo knife sudo less sudo man sudo more sudo mount sudo mysql sudo nano sudo neofetch sudo nice sudo nmap sudo node sudo nohup sudo openvpn sudo passwd sudo perl sudo php sudo pico sudo pkexec su…

网络知识介绍

一、TCP 传输控制协议,Transmission Control Protocol。 面向广域网的通信协议,跨域多个网络通信时,为两个通信端点之间提供一条具有如下特点的通信方式: 基于流、面向连接、可靠通信方式、网络状况不佳时尽量降低系统由于重传带…

二十三种设计模式第二十三篇--状态模式

状态模式,是一种行为模式,在软件开发过程中,对象按照不同的情况做出不同的行为,我们把这样的对象称为具有状态的对象,而把影响对象行为的一个或者多个动态变化的属性称为状态。 对这种具有状态的对象变成,…

《Java面向对象程序设计》学习笔记——第 1 章 Java入门

专栏:《Java面向对象程序设计》学习笔记