问题标签 [helmet.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
45 浏览

node.js - 快速证书故障排除

去年我的网站一直存在 SSL 问题,我什至不知道从哪里寻找原因。

通过邮递员使用我的站点 API 时,我在邮递员中收到一个通用的“无法获得任何响应”错误。如果我进入设置并禁用 SSL 验证,错误就会消失,一切正常。此外,有时移动浏览器会发出有关用户必须绕过才能访问该站点的证书的警告。但通常,站点证书信息很好,您会在浏览器上获得绿色锁。 在此处输入图像描述

这只是一个简单的快速服务器设置。我希望有人能看到我的实现问题。

0 投票
1 回答
31 浏览

http - 为什么即使我通过了规则,我也会收到 CSP frame-src 错误?

我收到错误:

Refused to frame 'https://oauth.telegram.org/' because it violates the following Content Security Policy directive: "frame-src https://outh.telegram.org"

我相信我已经正确设置了我的内容安全策略规则。为什么还是被屏蔽了?

0 投票
1 回答
326 浏览

javascript - 包含 gatsby 头盔脚本

我不能在头盔盖茨比中包含脚本。我要包含的脚本是这样的:

我试过这样做,控制台给了我一个错误:

使用这种语法我也尝试过,它给了我一个错误:

将如何解决?

0 投票
2 回答
1041 浏览

node.js - 如何使用头盔?

我想使用头盔包执行以下操作:

Content-Security-Policy 应该是什么以及如何使用头盔进行设置?访问控制允许来源怎么样?

我还想用它来启用最佳安全实践。你有什么建议?这些最佳实践是什么,我该如何设置它们?

0 投票
1 回答
1324 浏览

node.js - 允许带有 npm 头盔的 S3 图像

我正在使用 npm 头盔来保护我的 express 应用程序,但我想允许我的 S3 存储桶中的图像进行渲染。当我使用有意义的 helment 时出现此错误Refused to load the image '<URL>' because it violates the following Content Security Policy directive: "img-src 'self' data:".,我违反了头盔实现的 CSP。

我在他们的文档中唯一能找到的是:

这确实允许我的图像渲染,但我仍然想要头盔提供的 CSP。我只需要基本上将我的 S3 链接列入白名单,但我在他们的文档中找不到关于此主题的任何内容

0 投票
1 回答
1357 浏览

reactjs - 内容安全策略指令块动态加载的内联脚本

我正在为使用头盔的快速应用程序添加以下 CSP 指令。在某些情况下,我使用 react-helmet 在我的反应应用程序中动态加载脚本标记。但 CSP 阻止脚本运行。在客户端控制台中给出以下错误:

遵循https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src#Unsafe_inline_script它应该允许内联脚本。

我的配置中缺少什么?

快递服务器端:

反应应用:

浏览器发送的原始 CSP 报告:

0 投票
1 回答
1273 浏览

reactjs - 头盔导致 Heroku 上托管的 MERN 应用程序导致错误:拒绝执行内联脚本,因为它违反了以下内容

我在 Heroku 上托管了我的 MERN 应用程序,但是每当我在 app.js 文件中实现头盔时,都会导致此问题。

应用程序在本地环境中运行良好,但头盔导致错误:

拒绝执行内联脚本,因为它违反了以下内容安全策略指令:“script-src 'self'”。启用内联执行需要“unsafe-inline”关键字、哈希(“sha256-c8oXMAC5SpSNhKqLeKnZuBIrD93BdSvpZ47lOJrkmFE=”)或随机数(“nonce-...”)。

我还尝试按照以下方法修复它:

  1. 在项目根目录中创建一个 .env 文件
  2. 添加变量如下:INLINE_RUNTIME_CHUNK=false
  3. 再次构建项目并再次加载扩展。

但这无济于事。请指导我如何修复它以及在我的应用程序中实施其他安全措施的最佳方法是什么?

0 投票
1 回答
241 浏览

node.js - 将 crypto.js 值传递给脚本 nonce

我已经使用 node-helmet 设置了我的项目 CSP,所以它看起来像这样:

我可以在我的 HTML 中将 nonce 显示为文本,<%= nonce %>因此我知道该值被正确传递,但是当我尝试将该值传递给 script 标签上的 nonce 属性时,该值似乎没有通过。我只是收到一条错误消息,说该脚本违反了我的 CSP

编辑#2:

我现在在控制台中收到此错误:

我看到很多人建议使用加密来处理 nonce ......为什么我的 CSP 忽略它?

编辑#3:

我更改let nonce = crypto.randomBytes(16).toString('base64');let nonce = crypto.randomBytes(16).toString('hex');which 使 CSP 接受该值..但我仍然无法将加密创建的值传递到我的脚本标记中的 nonce 属性中...发生了什么事!

我觉得问题一定来自scriptSrc: ["'self'", nonce]......我真的不知道!

0 投票
1 回答
481 浏览

node.js - Node.js 头盔和 swagger-ui

我在 Node.js 中对 API 文档使用了招摇。现在我想使用头盔来保证安全,但是当我使用头盔时,会出现错误。但是,如果我将头盔放在路由器下方以进行招摇,那么它可以正常工作,这意味着头盔会做一些使 swagger-ui 不被加载的事情。

下面的代码是我如何使用头盔。

下图是招摇的错误

在此处输入图像描述

修复以允许 cors 但仍然出现错误。

0 投票
0 回答
110 浏览

express - 在使用 Helmet 中间件时允许 SVG

我当前的 Helmet 配置阻止了 SVG 加载到我的 express 应用程序上。我的应用程序尝试从 Ionicons 加载 SVG 文件,这需要使用以下脚本:

在我的 app.js 文件中,我有以下 ContentSecurityPolicy 配置:

常规图像加载正常,但 SVG 不加载。在 Helmet 指令下,我试图允许来自 Ionicon 域(即https://unpkg.com)的必要脚本,但我收到以下错误消息:

内容安全策略:页面的设置阻止了内联资源的加载(“script-src”)。

任何想法将不胜感激。谢谢