【问题标题】:Content Security Policy not allowing form submission内容安全策略不允许表单提交
【发布时间】:2017-06-16 00:27:41
【问题描述】:

我在这里需要帮助。 我有一个表单要提交到另一个 url,但是当我尝试提交它时,它拒绝提交,我正在检查我的控制台。

在 Chrome 上,我看到以下错误

resources2.aspx?HCCID=75694719&culture=en-US&mlcv=3006&template=5:7 拒绝加载图像“https://s4.mylivechat.com/livechat2/images/sprite.png”,因为它违反了以下内容安全策略指令:“img-src 'self' data:” .

拒绝将表单数据发送到“https://cipg.stanbicibtcbank.com/MerchantServices/MakePayment.aspx”,因为它违反了以下内容安全策略指令:“form-action 'self'”。

在 Mozilla Firefox 上,我看到以下内容:

内容安全政策:页面的设置阻止在https://s4.mylivechat.com/livechat2/images/sprite.png(“img-src http://smehelp.themarketplace.ng data:”)加载资源

内容安全政策:页面的设置阻止了在http://smehelp.themarketplace.ng/purchase/summary(“form-action 'self'”)处加载资源。

在网上查看解决方案,我已将以下内容添加到我的页眉

        <meta http-equiv="Content-Security-Policy" content="form-action 'self'">

但问题仍然存在。

这导致我无法提交表单。之前是提交表单的,今天刚试了一下,发现这个错误。

我在 MAC 操作系统上运行 Google Chrome 版本 55.0.2883.95(64 位)。

如果有任何建议可以尽快解决此问题,我将不胜感激。

谢谢

【问题讨论】:

    标签: javascript jquery forms google-chrome content-security-policy


    【解决方案1】:

    您正在响应标头中传递 Content-Security-Policy 值:

    base-uri '无'; default-src 'self' https://s4.mylivechat.com; child-src '无';连接源代码“自我”;字体源'自我' https://fonts.googleapis.comhttps://maxcdn.bootstrapcdn.com https://fonts.gstatic.com;形式动作“自我”;框架祖先“无”; img-src“自我”数据:;媒体源“自我”;对象源“无”;脚本源 '自我' https://www.youtube.com https://maps.google.com https://www.google-analytics.comhttps://mylivechat.com https://s4.mylivechat.comhttps://maps.googleapis.com'不安全内联' '不安全评估'; style-src 'self' https://fonts.googleapis.com https://s4.mylivechat.comhttps://maxcdn.bootstrapcdn.com '不安全内联'

    您添加到页面元的内容安全策略将被忽略,因为它存在于响应标头中。

    您需要在响应标头中发送的 CSP 中添加以下内容(以粗体显示)。

    base-uri '无'; default-src 'self' https://s4.mylivechat.com; child-src '无';连接源代码“自我”;字体源'自我' https://fonts.googleapis.comhttps://maxcdn.bootstrapcdn.com https://fonts.gstatic.com;形式动作“自我” https://cipg.stanbicibtcbank.com/MerchantServices/MakePayment.aspx;框架祖先“无”; img-src 'self' 数据: https://s4.mylivechat.com;媒体源“自我”;对象源“无”; script-src 'self' https://www.youtube.com https://maps.google.com https://www.google-analytics.comhttps://mylivechat.com https://s4.mylivechat.comhttps://maps.googleapis.com'不安全内联' '不安全评估';样式-src 'self' https://fonts.googleapis.com https://s4.mylivechat.comhttps://maxcdn.bootstrapcdn.com '不安全内联';

    【讨论】:

    • 感谢您的回复。请您告诉我如何“将cipg.stanbicibtcbank.com/MerchantServices/MakePayment.aspx 添加到表单操作”和“将s4.mylivechat.com 添加到 img-src”,因为这是我第一次实施 Content-Security-Policy。谢谢
    • 您的网站已经在响应中发送 Content-Security-Policy 标头。您需要编辑生成该策略的代码。如果它不是由您的应用程序服务器生成的,则您的网络服务器可能已配置为发送此值。
    • 好的。关于在哪里以及如何修改标题的任何指南?原谅我的天真
    • 这将取决于您的堆栈的哪一部分正在发送标头。如果您是您网站的唯一维护者,我将首先查看 yoir 网络服务器配置文件或运行全文搜索以查找特定于 CSP 的内容,例如代码库中的“connect-src”。
    • 好的。是否可以覆盖标题而不是编辑已经发送的标题?这样我就不必修改已经设置的了
    猜你喜欢
    • 2016-06-28
    • 2023-02-09
    • 2016-11-22
    • 1970-01-01
    • 2020-10-19
    • 2019-08-10
    • 2023-02-15
    • 2021-06-26
    • 1970-01-01
    相关资源
    最近更新 更多