【问题标题】:What is the purpose of the "Javascript Origins" when creating a Client ID创建客户端 ID 时“Javascript 起源”的目的是什么
【发布时间】:2023-04-09 05:34:01
【问题描述】:

当您为 Web 应用程序创建 Google API 凭据时,您指明了允许的 Javascript 来源,它只是一个 URI 列表。我试图了解这些的目的是什么。

这意味着任何提供客户端 ID 的 JS 代码都必须来自允许的来源才能访问 Google 的 API(例如日历 API 或 Google+ API)。但这有什么帮助呢?

  1. 客户端 ID 是公共知识,对于恶意代码来说,欺骗来源是微不足道的。

  2. 我要做的第一件事是添加“http://localhost:8080”,这样我就可以从我的开发环境中运行代码,但当然每台计算机都自我标识为“localhost”,所以我已经有效地否定了它的任何安全性。

这有什么意义?

提前致谢!

【问题讨论】:

    标签: google-api google-cloud-platform


    【解决方案1】:

    起源点是为了让开发人员可以指定客户端可以从哪些域运行。因此,欺骗因素被删除。例如,当使用 Google Drive 集成时,会加载 google iframe 和 HTTP 标头:

    x-frame-options:ALLOW-FROM https://www.yourorigin.com

    该标头指示浏览器仅在来自 yourorigin.com 时才加载。这是在 Google Developer Console 上创建客户端时指定的 URL。

    【讨论】:

    • 好的,谢谢。是否可以这样说,当我将“localhost”添加到允许的来源时,我基本上破坏了我从该功能中获得的任何安全性?
    • 如果您在应用运行时使用 localhost,Google 将给出来源不匹配错误。用户将无法授予它进行 oauth 握手的访问权限。他们可以下载您的应用程序/站点的副本,然后 localhost 将匹配您设置的来源,因此在某种程度上,是的,这可以让某人绕过您的来源,但这很麻烦。
    • 好的,有道理。谢谢!
    • 我相信这也被 Google 用来在他们的 API 中启用 CORS 支持。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-05
    • 2021-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-04
    • 1970-01-01
    相关资源
    最近更新 更多