【发布时间】:2018-10-23 05:36:07
【问题描述】:
在使用 Google API 时,是否可以在前端公开 API Key 和 oAuth 2.0 客户端 ID。
【问题讨论】:
标签: api google-api
在使用 Google API 时,是否可以在前端公开 API Key 和 oAuth 2.0 客户端 ID。
【问题讨论】:
标签: api google-api
根据Changes to the Google APIs Terms of Service
要求开发人员做出合理的努力来保护他们的私钥,而不是将它们嵌入到开源项目中。
您需要对自己和开发人员之间的密钥保密。您不得与他人分享它们
这方面的原因可以在这里阅读Can I really not ship open source with Client ID?
但是,您允许他们在 Google 眼中“冒充”您。如果我们的滥用系统检测到滥用行为(例如,如果有人尝试使用您的密钥对我们的一项服务进行 DoS),您就有可能因此而终止您的帐户(请注意 - 他们不会只是切断对键,他们会关闭您的控制台帐户)。此外,您已获得对公众不可用的 API 的白名单访问权限(并且很可能需要同意单独的服务条款),并且正在与任何需要它的人共享访问权限。毫无疑问,这违反了这些条款。很抱歉没有您正在寻找的答案,但密钥是我们必须知道谁在调用我们的服务的一种方式。
话虽如此,在某些情况下无法将它们保密,例如在 Javascript 代码中使用 google api 密钥。任何选择查看网站源代码的人都可以看到该密钥。 Google 已选择不对我所有关于如何最好地处理此问题的信息请求发表评论。
【讨论】: