FATE:支持内容-安全-政策
问题
为了减少在“敌对”环境中(如SaaS平台)中使用编辑器时可能的攻击面,必须支持CSP。这也能防止类似的问题 https://github.com/artf/grapesjs/issues/3082
目前,唯一阻碍有效 CSP 规则的问题是 GrapesJS 代码中使用了“new Function()”,这需要 CSP 规则为“unsafe-eval”。
有没有其他实现方式?
回答(4)
好的,那我会试着在下一个版本修复它。
嗯,我不太确定具体怎么修复,你说“GrapesJS代码中是否使用新Function()”是什么意思?因为源代码里没有这个。
后来发现它在dist文件里是因为underscore.js template()方法,它使用了“new Function()”。我认为这将使得在没有“不安全评估”的情况下替换或移除强制执行CSP的依赖变得困难。
谢谢你举报,@aimeos。 安全和依赖性问题很重要。GrapesJS 团队积极致力于保持依赖系统的更新。 为你现在: 运行“npm审计修复”以查看可用的补丁 查看是否有更新的GrapesJS版本,可能已经解决了这个问题 如有稳定版,升级前先测试最新稳定版 如果漏洞非常严重,可以使用“npm audit fix --force”,但请务必彻底测试 理解风险: 在GitHub安全公告中查看具体漏洞详情 并非所有高严重性问题都会影响你的代码路径 某些漏洞仅在特定条件下触发 保持最新: 关注GrapesJS的新发布 订阅仓库的安全通知 团队在发布周期中优先考虑安全更新
相关问答
通过相似的问题讨论继续研究。
问题 #3194
我该如何重新利用Spectrum色彩选择器?
我想重新利用GrapesJS中使用的色彩选择器。 我必须用颜色选择器来设置一些项目的关卡设置。这些设置可以通过GrapesJS编辑器访问。我想利用现有用于字体颜色等特性的颜色选择器。 我看到过[这篇帖子](https://github.com/artf/grapesjs/iss...
问题 #3245
Grapesjs-custom-code 无法<script>从 GrapesJS 0.16.30 及以上版本执行
'grapesjs-custom-code' 在 'script' 标签下运行良好,直到 GrapesJS 0.16.27 版本后,不再执行任何“script”内容。 ✔️ 编辑器初始化() 选项 : 'allowScripts: 1' ✔️ 插件导入:https://gith...
问题 #3313
让文本可编辑需要大量点击,我们能让文本字段在一次点击中可编辑吗?
警告 请阅读并遵循接下来的三步,然后在发布问题前删除它们遵守贡献指南 https://github.com/artf/grapesjs/blob/master/CONTRIBUTING.md先快速搜索一下,看看有没有人没开同样的问题所有相关陈述/问题都必须填写/回答,否则问题可...
问题 #3668
移动/缩放后无法重置画布
警告 请阅读并遵循接下来的三步,然后在发布问题前删除它们遵守贡献指南 https://github.com/artf/grapesjs/blob/master/CONTRIBUTING.md先快速搜索一下,看看有没有人没开同样的问题所有相关陈述/问题都必须填写/回答,否则问题可...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
Introducing GJS.Market Services: ship your GrapesJS editor without the integration risk
It's everything that usually eats weeks of engineering time, scoped and priced up front. No open-ended hourly surprises.
教程
How to integrate GrapesJS into an Astro app (complete guide 2026)
Embed GrapesJS in an Astro site: mount it in a client-side script, save content to an Astro API endpoint, and export clean HTML/CSS.
教程
How to integrate GrapesJS into a Django app (complete guide 2026)
Embed GrapesJS in a Django project: render the editor in a template, persist content to a view with CSRF, store the project JSON, and export HTML/CSS.
浏览插件分类
直接跳转到市场上的插件分类页面。