您现在的位置是:测试开发营 > 人工智能
边缘CSP:降低延迟的同时保证安全性
测试开发营2025-11-26 18:57:00【人工智能】9人已围观
简介内容安全策略Content Security Policy,CSP)是网络浏览器中实现的一种安全功能,可用于保护网站和Web应用程序免受各种类型的攻击,如跨站脚本攻击XSS)和数据注入攻击。CSP可控
内容安全策略(Content Security Policy,边缘保证CSP)是低延网络浏览器中实现的一种安全功能,可用于保护网站和Web应用程序免受各种类型的安全攻击,如跨站脚本攻击(XSS)和数据注入攻击。边缘保证CSP可控制并限制能够在网页上加载或执行的低延不同类型内容的来源 。这些内容类型包括:
脚本样式表图片
延伸阅读 ,安全点击链接了解 Akamai API Security
本文将首先介绍CSP的边缘保证工作原理。我们会展示一些更有效、低延更动态地CSP用法 ,安全包括在服务器上进行的边缘保证一些计算工作 。高防服务器其实我们可以将这些计算转移到边缘,低延从而降低延迟并确保最佳的安全用户体验 。我们还将探讨这种边缘计算解决方案的边缘保证工作原理。
CSP的低延工作原理
CSP通常是通过在HTTP响应中添加Content-Security-Policy标头 ,从而在服务器端定义的安全。这种标头由Web服务器发送给请求网页的用户 ,其中指定了浏览器在加载和执行页面内容时应遵循的规则。
1.Content-Security-Policy标头范例假设我们使用了Node.js中的Express,亿华云此时可以这样设置CSP标头:
复制const express = require(express); const app = express(); app.get(/, (req, res) => { res.set(Content-Security-Policy, directive1 value1; directive2 value2; ...); res.status(200).send(hello world); });1.2.3.4.5.6.如果使用Python和Flask,那么所用代码如下:
复制app = Flask(__name__) @app.route(/hello, methods=[GET]) def hello_world(): response = make_response(hello world) response.headers[Content-Security-Policy] = directive1 value1; directive2 value2; ... return response1.2.3.4.5.6. 2.使用指令每个CSP标头可以包含多个指令(directive),每个指令包含了与所提供的设置类型相关的值 。这些指令定义了各种类型资源的安全规则。例如script-src指令规定了允许的样式表来源 。
请看下面的CSP标头:
复制Content-Security-Policy: default-src self; script-src self https://static.example.com; style-src self unsafe-inline;1.上述标头中可以看到三个指令 ,每个指令都有相应的值 。
default-src指令设置为self ,表示默认情况下,所有内容都应从与页面本身相同的源码库源加载 。script-src指令允许从同一源(self)和指定的外部源(https://static.example.com)加载脚本 。style-src指令允许从同一源加载样式表,也允许内联样式 。可用指令的列表实际上非常详尽。其他指令还包括:
font-src:使用@font-face加载字体的源代码。frame-src:加载到<frame>和<iframe>等元素中的嵌套浏览上下文的源代码。img-src :图片和收藏夹图标的来源 。3.将CSP与HTML相结合在服务器上设置了CSP标头后,浏览器在加载网页资源时就会执行这些规则 。免费模板
在HTML源代码中,开发人员可以通过内联或引用资源(来自同一源或其他源)来添加元素(如脚本或样式表) 。然后 ,浏览器将检查CSP标头 ,确保这些资源符合定义的规则。如果CSP不允许某项资源 ,浏览器将阻止其包含和执行。

由于CSP标头是这样定义的 ,因此在对特定网页的所有请求中,它们通常都是一致的建站模板 。对单个页面的每次请求的详细信息和指令,在该页面的每次后续请求中都是相同的。
这就造成了一个有趣问题:如何处理动态的内联脚本和样式?我们可能希望允许执行特定内联脚本和样式,同时又不愿意开放地包含所有内联脚本和样式权限 。
这种情况下可以引入nonce值或哈希值,以确保即使脚本或样式的来源没有在CSP中明确列出,只要与CSP标头指定的nonce值或哈希值相匹配,服务器租用就仍然可以执行。
每次请求时,这些nonce值或哈希值都会发生变化,因此它们是唯一的 。所以它们需要在服务器上生成和管理 。虽然需要在服务器上执行,但并不一定需要在网站的主服务器上执行 。这就是边缘计算的用武之地。
边缘计算是什么 ?
边缘计算本质上是一种概念,即某些计算可以设置在网络外缘运行,在地理位置上更靠近最终用户。从本质上说 ,这是一种分布式计算 ,可以实现更接近实时的计算速度(哪怕跨跃了互联网) ,同时还能降低网络延迟。
利用边缘计算,我们可以将关注点转移到离最终用户更近的地方,为CSP标头生成nonce值或哈希值,从而减少等待的时间。
1.边缘计算如何让CSP受益CSP会降低网站速度的一个重要原因是:标头中的nonce会导致缓存丢失 ,此时客户的浏览器需要持续访问服务器,网站才能正确生成最新标头。为了解决这个问题 ,我们可以在边缘实例中实现动态CSP nonce生成器。这样既能确保缓存仍然有用 ,又能保证安全 。
这种方法的优点包括 :
降低延迟:边缘计算实例生成nonce并将其插入请求 。这样 ,已插入nonce的请求将继续进入缓存 ,从而避免每次请求都需要访问源服务器以获取新响应的情况。分布式安全性:使用边缘计算意味着,在客户需要与系统主服务器和应用程序代码交互前 ,我们就拥有了额外的安全层。即使存在应用程序漏洞 ,计算CSP nonce的边缘计算也能提供额外的安全层,帮助我们减轻潜在的问题。易于维护:如果采用无服务器方法在边缘管理CSP标头的动态nonce,这将简化维护任务 。特别是可以在不修改应用程序代码的情况下管理CSP策略。通常 ,我们还可以从中央控制系统管理这类变更 ,而无需部署任何特殊的代码。边缘计算功能还可用于多个独立应用程序,从而将关注点从为每个应用程序工作的特定团队中分离出来,并让安全专业人员确保能生成正确的nonce。总结是否有兴趣进一步了解边缘计算 ?欢迎关注Akamai官网,进一步了解Akamai的特色产品和服务,尤其是EdgeWorkers ,它可以创建一种无服务器体验,完全实现我们在本文中讨论的功能,并且无需自行解决如何在网络边缘部署服务器的复杂问题 。
—————————————————————————————————————————————————
如您所在的企业也想要进一步保护API安全,
点击链接 了解Akamai的解决方案
很赞哦!(84)
相关文章
- 马斯克执掌推特三周后,双因素身份认证出现漏洞马斯克执掌推特三周后,双因素身份认证出现漏洞
- 微星100系列BIOS教程与解析(深入了解微星100系列BIOS设置,让你的电脑如虎添翼)
- 51CTO OpenHarmony技术社区:做开发者社区要长期有耐心
- 如何利用 SpringBoot 在 ES 中实现类似连表的查询?
- CISO必看:六大IT风险管理框架怎么选
- NFV关键技术:存储虚拟化概述
- 大白菜U盘使用教程(快速上手,保护您的数字资产)
- 惠普U盘重新安装系统教程(以惠普U盘重新安装系统,轻松解决电脑故障)
- Chaos恶意软件使用了全新的DDoS和加密模块重新出现在人们面前
- U盘制作系统启动盘教程(快速创建U盘启动盘,让你的电脑焕然一新)
热门文章
站长推荐
友情链接
- 戴尔数据泄露事件:测试实验室平台遭 World Leaks 黑客组织入侵
- 体验音乐新境界,BOSEQC35带来震撼音质!(逆袭耳朵的,QC35成为音乐控的首选!)
- 神舟战神K540D-i7D2笔记本电脑的性能和用户体验(一款高性能笔记本电脑的推荐及评测)
- 聊聊到底什么是BRAS?
- 你的App每三分钟就会遭遇一次攻击
- 0day 漏洞量产?AI Agent “生产线”曝光
- 技嘉降BIOS教程(教你轻松降级技嘉BIOS,解决电脑问题)
- 托管服务提供商的优势和长期机会
- 企业数据库险遭百亿损失,瑞数DDR全周期防护破解“暗雷”阴影
- W7手动还原系统教程(一步步教您如何使用W7手动还原系统,保护和修复您的计算机) 企业服务器香港物理机云服务器b2b信息平台网站建设源码库亿华云







