content-security-policy 相关问题

内容安全策略(CSP)旨在通过为开发人员提供对允许加载页面的资源以及允许执行的脚本的细粒度控制来降低跨站点脚本攻击的风险。

style-src 阻止 JavaScript 编辑内联样式

内容安全策略:默认源*; script-src 'self' 'unsafe-hashes'; style-src 'self' 'unsafe-hashes' 函数 pureFadeOut(elem){ var el = document.getElementById(elem); el.style.opacity...

回答 1 投票 0

我的内容安全策略阻止的内容比我预期的要多

我创建了一个 Azure 服务应用程序。我正在使用网站内容安全策略来保护它。除了当我使用它时,它会阻止我不希望它阻止的事情。 我正在使用 recaptcha,这是 ...

回答 0 投票 0

设置限制性 Referrer-Policy 时第三方 JavaScript 访问 document.location?

Referrer 策略限制何时在请求上设置 Referer 标头,如果允许标头,则引用 URL 的哪些部分可用。这是对用户隐私的考虑。如果我...

回答 1 投票 0

内容安全策略元标记

我在页面上添加了我的脚本,如下所示: app.Use(async (context, next) => { var ByteArray = new byte[20]; 使用 (var Rnd = RandomNumberGenerator.Create())...

回答 1 投票 0

如何将附加信息附加到浏览器 report-to/report-uri/report-endpoints 报告 api?

我目前有一个内容安全策略 (CSP),它正在设置并记录一些信息,但想添加一些附加信息以进行记录。例如我想记录信息...

回答 0 投票 0

在 <style> 标签内时背景图像未加载。在 <div> 本身中设置样式时效果很好。不是不正确的文件路径问题

我无法将背景图片放入 标签中,我不知道为什么它不起作用。 以下所有操作都是在我的本地机器上完成的。我的网站也托管在 Linode 服务上...</desc> <question vote="1"> <p>我无法将背景图片放入 <pre><code>&lt;style&gt;</code></pre> 标签中,我不知道为什么它不起作用。</p> <p>以下所有操作均在我的本地机器上完成。我的网站也托管在 Linode 服务器上。</p> <p>我有以下代码,可以正常工作。它直接在身体内的<pre><code>div</code></pre>中设置背景图像(通过Django):</p> <pre><code>&lt;body&gt; &lt;div class=&#34;scroll-container&#34; style=&#34;background-image: url(&#39;{% static &#39;myapp/scroll-L.jpg&#39; %}&#39;);&#34;&gt; &lt;/div&gt; &lt;/body&gt; </code></pre> <p>当我加载页面时,您可以看到滚动图像加载正常(image1 <a href="https://i.imgur.com/T75mFyl.png" rel="nofollow noreferrer">https://i.imgur.com/T75mFyl.png</a>)</p> <p>然而,当我将背景图像放入<pre><code>&lt;style&gt;</code></pre> 中的<pre><code>&lt;head&gt;</code></pre> 标签时,一切都开始出错:</p> <pre><code>&lt;style&gt; .scroll-container { background-image: url(&#34;../../static/myapp/scroll-L.jpg&#34;) } &lt;/style&gt; </code></pre> <p>当我加载页面时,您可以看到滚动图像未加载(image2 <a href="https://i.imgur.com/RCsWhE7.png" rel="nofollow noreferrer">https://i.imgur.com/RCsWhE7.png</a>)</p> <p>我不能在 head 样式标签中使用 Django 的 <pre><code>{% static ... %}</code></pre>,所以它不起作用。</p> <p>这显然与对象存储 (eu-central-1.linodeobjects) 有关,但我不知道是什么。为什么在 <pre><code>div</code></pre> 风格而不是 <pre><code>style</code></pre> 标签内使用图像时它会起作用?</p> <p>我已经搜索了大约 2 个小时试图找到修复程序,但我无法弄清楚。</p> <p>文件路径是正确的,但只是为了确认我尝试了以下但没有成功:</p> <pre><code>.scroll-container { background-image: url(&#34;static/myapp/scroll-L.jpg&#34;) } .scroll-container { background-image: url(&#34;/static/myapp/scroll-L.jpg&#34;) } .scroll-container { background-image: url(&#34;/../../static/myapp/scroll-L.jpg&#34;) } {% load static %} .scroll-container { background-image: url(&#34;{% static &#39;myapp/scroll-L.jpg&#39; %}&#34;) } </code></pre> <p>我需要做一些事情,而不是将背景图片直接放在 div 中,因为我正在为我的网站整理<pre><code>CSP</code></pre>,如果它是样式直接设置到 div.<pre> </pre>我还尝试将图像直接放在模板文件夹中,这样我就可以调用:<pre> </pre><code>nonce</code></p> <p>但是那也没有用。我也试过把它放进</p><code>hash</code><pre>,但收效甚微。</pre> <p>编辑:这是我在 settings.py 中存储对象的代码:<pre> </pre><code>.scroll-container { background-image: url(&#34;scroll-L.jpg&#34;) } </code></p> <p> </p> <pre>您想使用 s3 存储作为 CloudFront(CDN)。所以你需要配置</pre>AWS_S3_CUSTOM_DOMAIN</question>变量。<answer tick="false" vote="0"> <p><code>master.css</code><strong> </strong>官方 django-storages 文档。 </p>点击查看<pre></pre> <p> <a href="https://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html#cloudfront" rel="nofollow noreferrer"> </a>这是对将来遇到同样问题的任何人的修复。</p> </answer>我没有调用背景图像的文件路径,而是直接从我的对象存储桶中调用图像:<answer tick="false" vote="0"> <p><code># Object Storage for Django static files (https://www.codingforentrepreneurs.com/blog/linode-object-storage-for-django-static-files/) DEFAULT_FILE_STORAGE = &#39;storages.backends.s3boto3.S3Boto3Storage&#39; STATICFILES_STORAGE = &#39;storages.backends.s3boto3.S3Boto3Storage&#39; AWS_S3_OBJECT_PARAMETERS = { &#39;CacheControl&#39;: &#39;max-age=86400&#39;, } LINODE_BUCKET = os.environ.get(&#39;LINODE_BUCKET&#39;, &#39;hmst-bucket&#39;) LINODE_BUCKET_REGION = os.environ.get(&#39;LINODE_BUCKET_REGION&#39;, &#39;eu-central-1&#39;) LINODE_BUCKET_ACCESS_KEY = os.environ.get(&#39;LINODE_BUCKET_ACCESS_KEY&#39;, &#39;#&#39;) LINODE_BUCKET_SECRET_KEY = os.environ.get(&#39;LINODE_BUCKET_SECRET_KEY&#39;, &#39;#&#39;) AWS_S3_ENDPOINT_URL = f&#39;https://{LINODE_BUCKET_REGION}.linodeobjects.com&#39; AWS_ACCESS_KEY_ID = LINODE_BUCKET_ACCESS_KEY AWS_SECRET_ACCESS_KEY = LINODE_BUCKET_SECRET_KEY AWS_S3_REGION_NAME = LINODE_BUCKET_REGION AWS_S3_USE_SSL = True AWS_STORAGE_BUCKET_NAME = LINODE_BUCKET AWS_DEFAULT_ACL = None </code></p> <p>当我尝试打开图像时,出现 403(禁止错误)并显示以下消息:</p> <pre><code>AWS_S3_CUSTOM_DOMAIN = &#39;cdn.mydomain.com&#39; </code></pre> <p>所以我需要更改访问控制列表 (ACL) 的权限。我将对象存储的桶级 ACL 和对象级 ACL 从 </p><code>&lt;style&gt; .scroll-container { background-image: url(&#34;https://hmst-bucket.eu-central-1.linodeobjects.com/myapp/scroll-L.jpg&#34;); } &lt;/style&gt; </code><pre> 更改为 </pre><code>This XML file does not appear to have any style information associated with it. The document tree is shown below. &lt;Error&gt; &lt;Code&gt;AccessDenied&lt;/Code&gt; &lt;BucketName&gt;hmst-bucket&lt;/BucketName&gt; &lt;RequestId&gt;#&lt;/RequestId&gt; &lt;HostId&gt;#&lt;/HostId&gt; &lt;/Error&gt; </code><p>。<pre> </pre>我使用 Linode,所以我遵循了这个指南:<pre>https://www.linode.com/docs/products/storage/object-storage/guides/acls/</pre>。要更改对象级别 ACL,指南说您需要单击更多选项省略号并选择</p>Details<p>,但是这已经过时了,您需要单击实际对象本身。<a href="https://www.linode.com/docs/products/storage/object-storage/guides/acls/" rel="nofollow noreferrer"> </a>更改这些权限解决了这个问题。<em> </em> </p><p>

回答 0 投票 0

Firebase `内容安全策略`问题

我们在 firebase.json 文件中配置了 Content-Security-Policy。我们还有很多需要申请的域名。例如,它可以是跟踪服务或某些分析工具。 我

回答 0 投票 0

如何解决访问 cookie 或存储的请求被阻止,因为它来自跟踪器并且启用了内容阻止

我在我的网站 www.iusefaith.com 上使用内容安全政策和 google adsense。我的 adsense 没有显示,我在 firefox 检查器中收到的错误消息是 请求访问 cookie...

回答 1 投票 0

在 React 应用程序的强制模式下找不到 CSP

我正在运行 Lighthouse 报告以确保我的网站符合标准。 我正在尝试通过两种方法将 CSP 添加到我的网站: 将它添加到我的 index.html 中的标签 将它附加到响应头...

回答 0 投票 0

如何允许受防火墙保护的 2 个服务器之间的混合内容

我的配置如下: PFsense 防火墙 在该防火墙后面有一个具有 3 个域的“Web”服务器,包括一个“dev.domain.tld”,可以使用

回答 1 投票 0

Ruby on rails 6.1.7:努力使用 Turbolinks 和 CSP 渲染部分

我正在使用带有 turbolinks 和基于 CSP nonce 的 Rails 6.1.7。 这是我的 CSP 配置: policy.default_src :self, :https policy.font_src :self, :https, :data policy.img_src :self, :h...

回答 0 投票 0

加载 stripe.js 时使用 Stripe CSP

我正在尝试在静态页面上加载,所以我添加了以下内容安全策略: 我正在尝试在静态页面上加载<script src="https://js.stripe.com/v3/"></script>,所以我添加了以下内容Content-Security-Policy: <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' https://js.stripe.com https://maps.googleapis.com; connect-src 'self' https://api.stripe.com https://hooks.stripe.com https://maps.googleapis.com; frame-src 'self' https://js.stripe.com https://hooks.stripe.com; " /> 然后我启动我的静态服务器(提供良好的 CORS 标头),我在浏览器控制台中收到以下错误 ERROR: Content Security Policy: The page’s settings blocked the loading of a resource at inline (“script-src”). content.js:40:10 ERROR: Content Security Policy: The page’s settings observed the loading of a resource at inline (“script-src”). A CSP report is being sent. content.js:40:10 WARNING: Partitioned cookie or storage access was provided to “https://js.stripe.com/v3/m-outer-93afeeb17bc37e711759584dbfc50d47.html#url=http%3A%2F%2Flocalhost%3A3000%2Ffr%2Foffers%2Fclimb-up-regular-price-live%2Forder%2F&title=Achats%20group%C3%A9s%20-%20Climb%20Up%20live&referrer=http%3A%2F%2Flocalhost%3A3000%2Ffr%2Foffers%2Fclimb-up-regular-price-live%2Forder%2F&muid=76c455da-cdc3-49bb-8a74-21f2190214463691c5&sid=51750ec5-9420-4acd-aa45-01249980a50dbcc98a&version=6&preview=false” because it is loaded in the third-party context and dynamic state partitioning is enabled. ERROR: Content Security Policy: The page’s settings blocked the loading of a resource at inline (“script-src”). content.js:40:10 WARNING: Partitioned cookie or storage access was provided to “https://m.stripe.network/inner.html#url=http%3A%2F%2Flocalhost%3A3000%2Ffr%2Foffers%2Fclimb-up-regular-price-live%2Forder%2F&title=Achats%20group%C3%A9s%20-%20Climb%20Up%20live&referrer=http%3A%2F%2Flocalhost%3A3000%2Ffr%2Foffers%2Fclimb-up-regular-price-live%2Forder%2F&muid=76c455da-cdc3-49bb-8a74-21f2190214463691c5&sid=51750ec5-9420-4acd-aa45-01249980a50dbcc98a&version=6&preview=false” because it is loaded in the third-party context and dynamic state partitioning is enabled. 当然页面保持空白,集成不起作用。 这是我的服务器对该页面的响应标头 HTTP/1.1 200 OK content-type: text/html; charset=utf-8 content-length: 2333 access-control-allow-origin: http://localhost:3000, https://js.stripe.com access-control-allow-methods: GET, POST date: Tue, 07 Mar 2023 07:52:38 GMT 知道为什么 Stripe.js 拒绝加载吗? 非常感谢;) 编辑 07/03/2023 我试过用 https 运行所有这些,也不起作用。 这种情况的两个主要嫌疑人是 另一个 CSP。如果内容被框架添加的默认 CSP 阻止,则添加另一个 CSP 无济于事。但是你的标题没有显示任何内容。 像 onclick="..." 这样的事件属性。 'unsafe-inline' 不允许这些。在 CSP 级别 3 中可以使用附加控件允许它们,但最好重写它们以使用事件侦听器。 content.js文件中出现这个有点令人费解,但可能是js文件插入了一个包含事件属性的元素。 如果这没有帮助,请尝试检查什么会触发 content.js 第 40 行的 CSP 错误。 我对 CSP 不是很熟悉,但这里有一些你可以尝试的东西: 从你的self标签中删除所有meta,所以像这样: <meta http-equiv="Content-Security-Policy" content="default-src; script-src https://js.stripe.com https://maps.googleapis.com; connect-src https://api.stripe.com https://hooks.stripe.com https://maps.googleapis.com; frame-src https://js.stripe.com https://hooks.stripe.com;" /> 确保阅读this Stripe doc,如果您使用的是可信类型,它会提到一些警告。 仔细检查页面上没有其他策略覆盖您设置的允许列表。

回答 2 投票 0

通过 angular.json 导入的样式被 Content-Security-Policy script-src 阻止:self

我通过 angular.json 样式数组导入了几个 css 和 scss 文件,这最终添加了 我已经通过 angular.json 样式数组导入了几个 css 和 scss 文件,这最终添加了 <link rel="stylesheet" href="styles.44408b7ba7c0e916.css" media="all" onload="this.media='all'"> 在<body>之下。我有 content-security-policy: object-src 'none'; script-src 'self',它阻止了上面的 <link> 加载,因此应用程序无法运行。错误如下, 拒绝执行内联事件处理程序,因为它违反了以下内容安全策略指令:“script-src 'self'”。启用内联执行需要“不安全内联”关键字、散列(“sha256-...”)或随机数(“nonce-...”)。请注意,哈希不适用于事件处理程序、样式属性和 javascript: 导航,除非存在“不安全哈希”关键字。 angular.json 链接标签 控制台错误 我看到向 CSP 添加“不安全内联”将解决问题,但我不能使用此解决方案,因为这是不安全的。 请给我建议任何其他不会对安全构成威胁的解决方案。 另外请说明为什么 css 被 script-src 策略阻止。 错误表明它拒绝执行内联事件处理程序,该处理程序在您的标记末尾为 onload="this.media='all'" 。您应该将其重写为白名单脚本中的事件侦听器。 这个帮助解决了我的问题, 找到如何禁用 inlineCritical 样式 https://angular.io/guide/workspace-config#styles-optimization-options 在构建配置中的 angular.json 而不是 "optimization": true 替换为 "optimization": { "scripts": true, "styles": { "minify": true, "inlineCritical": false }, "fonts": true },

回答 2 投票 0

保护 iframe 免受其他域的侵害

我在 000webhost 网站上创建了一个视频嵌入页面,然后它将嵌入到我在 Blogger 上运行的其他网站中。我不希望任何人直接访问 000webhost 视频页面或嵌入...

回答 1 投票 0

内容安全策略破坏开发环境中的错误页面

我在我的 Rails 应用程序中启用了内容安全策略。当我在开发环境中本地运行它时,rails 错误页面被破坏,因为内联 JavaScript 和 CSS 被 br...

回答 1 投票 0

Vue CSP 不安全评估

我正在尝试在我的节点服务器上设置适当的 CSP,它为我的 Vue 应用程序提供服务。如果我将 script-src 设置为 self,我会收到以下错误: EvalError:拒绝将字符串评估为 JavaScript,因为 '不安全-

回答 0 投票 0

自定义网页表单脚本生成

好吧,是的,现在是 2020 年,但不要笑。我正在尝试更新一些 ASP.NET Web 表单。我的目标是锁定它们,通过应用更具限制性的内容安全策略 (CSP) 使它们更加安全。到

回答 3 投票 0

覆盖由 HTML 元标记设置的内容安全策略

我想测试调用第三方脚本的本地脚本(测试 SAAS 应用程序)。但是,我被 CSP 政策阻止了,因为我的域不在指令中。 CSP 由...设置...

回答 1 投票 0

是否有一种干净利落的方式将内联样式列入白名单,以免它们被 CSP 阻止? [关闭]

我有一个主要用 C# 编写的 .NET 6 应用程序。应用程序中有剃须刀页面,我偶尔需要在其中使用内联样式。他们被内容安全策略阻止了,所以我正在研究如何

回答 0 投票 0

如何在开发 chrome 扩展时使用 importmap

我正在尝试创建使用 Three.js 及其一些插件的 chrome 扩展,如果没有导入映射我无法导入它们,因为模块本身将 Three.js 导入为“三”而没有

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.