- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Chrome 60 中,他们添加了一项针对非 TLS 连接禁用 crypto.subtle
的功能。出于安全原因,我们的产品需要运行本地服务器并将一些安全远程连接转发到 localhost。因为 localhost
从技术上讲并不是一个命名域,所以我们无法使用 TLS——有效地使 crypto.subtle
在 Chrome(以及基于 chromium 的浏览器,如 Opera)中无法使用,并强制我们使用不太安全的填充程序,例如 asmCrypto.js。有没有办法告诉 Chrome 通过 header 启用 crypto.subtle
?有没有办法在我们可以告诉用户的设置中禁用新的功能(最坏的情况)?
最佳答案
In Chrome 60, they added a feature that disables crypto.subtle for non-TLS connections
不完全是,自第一个受支持的版本(chrome 32?)以来,crypto.subtle
对于非安全来源已被禁用
但是 localhost
被认为是安全来源 https://www.chromium.org/Home/chromium-security/prefer-secure-origins-for-powerful-new-features
“Secure origins” are origins that match at least one of the following (scheme, host, port) patterns:
(https, *, *)
(wss, *, *)
(*, localhost, *)
(*, 127/8, *)
(*, ::1/128, *)
(file, *, —)
(chrome-extension, *, —)
所以您应该能够在 http://localhost
上使用 Web Cryptographi Api。
您的网站是否使用 HTTPS?您可能遇到了与混合 HTTPS 和 HTTP 相关的问题。 Chrome 将阻止与 localhost 的 HTTP 连接。然后,您可以为 127.0.0.1 生成自签名证书,并使用 HTTPS 启动本地服务器(类似于 @SLaks 答案,但您不需要 hosts
条目)
关于google-chrome - 如何在 Chrome 中为不安全的来源启用 crypto.subtle?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46670556/
我是一名优秀的程序员,十分优秀!