【发布时间】:2020-06-24 07:16:28
【问题描述】:
【问题讨论】:
-
您可能需要向他们解释,任何通过 HTTP 进行的身份验证一开始几乎都是无用的。如果这不是您想要的答案,我很抱歉,但作为专家,您的工作是向他们解释,而不是试图绕过它并提供不安全的解决方案。有时,如果客户不听理由,最好放弃合同 - 否则将来可能会咬你。
【问题讨论】:
SDK 在内部使用 Web Cryptography API 创建 SHA-256 摘要。
根据规范(通过 Github 问题),Web Cryptography API 需要安全来源,因此在不安全的上下文中访问 Crypto.subtle 会返回未定义。
在大多数浏览器中,安全源是至少匹配以下模式之一(方案、主机、端口)的源:
(https, *, *)
(wss, *, *)
(*, localhost, *)
(*, 127/8, *)
(*, ::1/128, *)
(file, *, —)
如果您从安全来源运行应用程序,则您的浏览器可能不支持 Web Crypto API。兼容性表请查看https://caniuse.com/#feat=mdn-api_subtlecrypto https://github.com/auth0/auth0-spa-js/blob/master/FAQ.md#why-do-i-get-auth0-spa-js-must-run-on-a-secure-origin
【讨论】:
Safari 没有遇到此限制。但是,Chrome 和 Firefox 可以。
【讨论】: