问题标签 [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 投票
1 回答
112 浏览

seo - seo 组件 gatsby - 影响布局

我的 gatsby 项目有这个非常奇怪的问题,其中 SEO 组件(与文档中建议的默认值非常相似)正在影响我的页面布局。无论我将 SEO 组件放在哪里(在布局包装器组件内部或外部,我的导航栏似乎都受到了影响......非常奇怪,因为我所看到的 seo 组件没有样式或 jsx 或 css 或任何东西。它只是一种方式为 SEO 添加元标记 .. 有人可以帮忙吗?这是我的页面布局(在这里使用基本的反应上下文和 seo 组件来注入元数据)

然后这是我的 seo 组件的结构方式。不知道是什么原因造成的!

0 投票
1 回答
397 浏览

node.js - 头盔内容安全策略阻止 React.js

我目前正在使用 React 开发 SPA。为了服务于 SPA,我只是有一个快速服务器,它将构建文件夹作为静态文件夹提供服务。

但是每当我尝试运行应用程序时,什么都没有加载,我得到控制台错误:

我已经做了很多谷歌搜索,但我找不到任何有用的东西。

我已经尝试禁用头盔 CSP,但仍然出现错误。

我试过卸载头盔,没有。

停止并重新启动服务器,不。

停止一切,重新启动服务器并重新打开 chrome,不。

目前这是我的使用声明

因为无论我假设 CSP 没有更新什么,它都是相同的错误,但我不知道足够的知识来测试这个理论,或者我什至可以做些什么来补救它。

0 投票
2 回答
215 浏览

node.js - 使用 express 和头盔服务的 React 应用程序无法发出 API 请求

我正在使用 express 提供一个反应应用程序构建。

一切都按预期工作。但是,一旦我将helmet(不是 react-helmet)添加到 express 应用程序,我就会遇到问题(样式和脚本未加载)。在搜索了几个资源之后,我能够想出一个解决方案来使它工作。下面的代码显示了我为加载样式和脚本所做的修复。

此外,我还包括INLINE_RUNTIME_CHUNK=false.env file.

我目前遇到的问题是我正在进行的 API 调用api.domain.tld不起作用。它被阻止,并且在 Firefox 上显示以下错误。

内容安全策略:页面设置阻止在https://api.domain.tld/endpoint(“default-src”)加载资源。

Chrome 显示以下错误。

拒绝连接到“https://api.domain.tld/endpoint”,因为它违反了以下内容安全策略指令:“default-src 'self'”。请注意,'connect-src' 没有明确设置,因此 'default-src' 用作后备。

  • 请注意,react 应用程序已打开domain.tld且 API 已打开api.domain.tld

如果解决此问题,我该如何进行 API 调用?

0 投票
0 回答
146 浏览

express - 有条件地放宽 CSP 策略或放宽用于显示 iframe 内容的特定 Nest 路由的 CSP - Node/NestJS

我有带有 NestJS 作为 BFF 的 Angular 应用程序,它是一个多租户应用程序。我需要放宽 frame-src 以仅将特定 NestJS 路由的域列入白名单,并在用户不访问包含 iframe 的页面时保持策略不变。我有一个页面,其中包含链接到不同 iframe 组件的多个选项卡。我们使用了头盔来配置我们的 CSP 响应头,默认情况下不包含 frame-src 指令,并且仅在访问包含 iframe 的页面时才想要添加。iframe 设置看起来像这样,其中 config 用于在 BFF 构建 url -

<iframe width="100%" height="100%" frameBorder="0" [src]="/iframewrapper?config=config1" title="Custom Wrapper"></iframe>

BFF 控制器如下:

0 投票
0 回答
58 浏览

javascript - 拒绝连接到 URL,因为它违反了 CSP

我正在构建一个使用头盔作为服务器端安全层的程序。我从 GitLab API 获取。我使用 socket.io 与 gitlab 进行通信。我还使用 ngrok 为 gitlab 获取一个临时 url,以便在我在 localhost 上工作时向其发送请求。

打开应用程序时,每隔几秒钟我就会收到此错误:

拒绝连接到“https://.ngrok.iosocket.io/”,因为它违反了以下内容安全策略指令:“default-src 'self'”。请注意,'connect-src' 没有明确设置,因此 'default-src' 用作后备。

为什么会这样?我尝试将 ngrok url 添加为 connect-src 但这没有帮助。

这是我的头盔 CSP 的样子:

0 投票
0 回答
113 浏览

node.js - 内容安全策略:页面的设置阻止在 eval(“script-src”)加载资源

大家好,我刚刚部署了一个全栈 vuejs 并将应用程序表达到 heroku。这是我为 vue js 应用程序提供服务的后端代码。

当我访问我的应用程序并尝试登录时,我收到此错误。

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

内容安全策略:页面设置阻止在 http://localhost:3000/api/v1/user/login(“default-src”)加载资源。xhr.js:177:12

有人可以帮我解决这个问题。谢谢

0 投票
1 回答
47 浏览

node.js - Express.js:用户无法使用登录

我正在使用passport.js 和passport-local-mongoose。尝试登录时没有任何反应,也没有错误消息。但是,当注册一切正常时,新用户就会被添加到数据库中。

我也使用helmet.js 实现了一些安全标头。

我尝试在禁用所有标题的情况下登录,似乎没有用。

登录的发布路线:

登录.ejs

0 投票
1 回答
151 浏览

node.js - 允许头盔 CSP 中的链接

我在头盔中遇到了关于我的 CSP 标头的问题,无论我做什么,链接都永远不会起作用,总是会返回错误或断开的链接,通常两者兼而有之。我将如何解决它?当前代码:

0 投票
1 回答
322 浏览

node.js - 由于 csp,无法从 aws s3 存储桶获取图像

我有一个 s3 存储桶中的所有图像,我需要在主页和其他页面上显示它们。为了得到他们,我有这个代码:

在 app.js 我使用这样的头盔:

为什么我每次都会收到这个错误?

0 投票
0 回答
56 浏览

express - 头盔阻挡引导

起初,引导程序没有加载,所以我放了这个:

Then this bug comes in: "Refused to load the font 'data:font/truetype;charset=utf-8;base64,AAEAAAAQAQAABAAARkZUTX2Nv5YAAjnoAAAAHEdERUYENABTAAHJmAAAACRHUE9T4BjvnAACObAAAAA2R1NVQgmn+v0AAcm8AABv9E9TLzIKcyJjAAABiAAAAGBjbWFwv7oVNQAACfQAAAYWY3Z0IAARAUQAABAMAAAABGdhc3D//wADAAHJkAAAAAhnbHlmCJ88vQAAGBgAAYfUaGVhZAkc3WMAAAEMAAAANmhoZWEEAQIFAAABRAAAACRobXR4diRu0wAAAegAAAgMbG9jYdlVdhQAABAQAAAIBm1heHAEXADhAAABaAAAACBuYW1ludepWgABn+wAAAKdcG9zdBJ+3qAAAaKMAAAnBAABAAAAAQPX5ykXUl8PPPUAHwIAAAAAANP0zEUAAAAA0/TMSAAA//4CAAIEAAAACAACAAAAAAAAAAEAAAIAAAAAAAIAAAAAAAIAAAEAAAAAAAAAAAA...4AIAAgABIAIQIoAAgADwANACAAIgAbABsAJgL2AAgAFQAOACEAIAAVABwAIQIlAAcADwANAA4AIgAhABwA2gAHABIAEgAYABIAGwARAQIABwAWABEAFAASACEAIAAqAAcADgAfABsAFgAbABQBkwAFAA4AIQAQABUDqwAEABwAHwAYAtEABAAWABMAFgBdAAMAEgAPAtAAAgAQAAEABAOsABQAHAAiACEAIgAPABIADQAgABIADgAfABAAFQASABEADQATABwAHwADAAgAIgA0AnMADAAcABwAGgANABwAIgAhAA0AGgAOAB0DsgAIABwAHAAaAA0AHAAiACEDsQAHABwAHAAaAA0AFgAbAAIABAAGAAcAAAAOABYAAgAYACQACwAmACcAGAABAAAACgAeADQAAWxhdG4ACAAEAAAAAP//AAEAAAABc2l6ZQAIAAQAAACgAAAAAAAAAAAAAAAAAAAAAQAAAADVpCcIAAAAANP0zEUAAAAA0/TMSA=='"

我该如何解决?