PayPal 智能按钮内联脚本的 Nonce

Posted

技术标签:

【中文标题】PayPal 智能按钮内联脚本的 Nonce【英文标题】:Nonce for PayPal Smart Button inline script 【发布时间】:2021-06-24 18:23:51 【问题描述】:

我使用 php 为我的 PayPal 智能按钮内联脚本创建了一个随机数,以符合 CSP。但我遇到的问题是它是暴露的,可以在 Chrome 的开发人员工具中看到。 在 PayPal 网站上,它说要使用 data-csp-nonce 属性,这似乎是问题所在,即使 CSP 没有抱怨该脚本,它也已暴露。 https://developer.paypal.com/docs/checkout/troubleshoot/support/

如果我只使用nonce 属性,则不会公开随机数(这是预期的行为),但我在控制台中收到错误消息,指出内联脚本不符合 CSP。我在这里有什么遗漏吗?

【问题讨论】:

【参考方案1】:

在页面和标题中显示 nonce 是正常的,并且旨在。下一个页面加载会有一个新的 nonce,所以知道旧的 nonce 是没有用的。

【讨论】:

这就是我最初的想法,因为每个http请求都会创建一个新的nonce,但后来我看到了***.com/a/55673767/12208549。

以上是关于PayPal 智能按钮内联脚本的 Nonce的主要内容,如果未能解决你的问题,请参考以下文章

如何允许内联 JS 脚本使用 Nonce 进行 CSP

如何将 nonce 属性随机 id 与内联 JavaScript 关联

内容安全策略 nonce 不适用于事件处理程序属性

sCrypt 合约中的内联脚本

Braintree 中的 PayPal 按钮无法使用定期付款

在 Wordpress 中延迟内联脚本