从 Google GCP 项目凭据 API 密钥中检索信息

Posted

技术标签:

【中文标题】从 Google GCP 项目凭据 API 密钥中检索信息【英文标题】:Retrieve information from Google GCP Project Credentials API key 【发布时间】:2020-08-20 17:48:36 【问题描述】:

您可以从通过 Google GCP Console 创建的 Google API 密钥中检索哪些信息。

GCP 控制台 -> 菜单 -> API 和服务 -> 凭据 -> API 密钥

后端是否有办法获取与此查询字符串关联的项目 ID,例如:key=apiKey? 或 列出使用某些 googleAPI 的 GCP 项目的所有 API 密钥? 或 类似于:gcloud iam api-keys 列表?

谢谢。

【问题讨论】:

【参考方案1】:

您可以从 Google 创建的 API 密钥中检索哪些信息 通过 Google GCP 控制台。

可以看到如下信息:

API 密钥 创建日期 创建者 总使用量 应用限制 网站限制

后端是否有办法获取与此关联的项目 ID 查询字符串 ex: key=apiKey?

最终用户和 GCP IAM 成员都无法看到有关 API 密钥的任何内容,除非通过 GCP 控制台。

列出使用某些 googleAPI 的 GCP 项目的所有 API 密钥?

尚未为 API 密钥发布公共 API。

类似:gcloud iam api-keys 列表?

尚未发布任何工具来显示有关 API 密钥的信息。

【讨论】:

谢谢约翰,所以我无法验证这个随机字符串或做很多事情?它只是为了谷歌在地图等中的使用......? 什么都没有,除了将它用作支持服务的 API 密钥。 约翰,再次感谢您,但这如何应用?虽然 API 密钥标识调用项目或 API 密钥允许可扩展服务代理 (ESP) 拒绝来自尚未被授予访问权限或在 API 中启用的项目的调用? cloud.google.com/endpoints/docs/openapi/… @BrianB - 我不明白你的评论。 他们在谈论的似乎是 Google 端点服务:API 密钥提供项目标识 - 识别正在调用此 API 的应用程序或项目如果项目启用 -MY- 我创建的 API API 和服务,创建 API 密钥,调用我的端点,我无法知道哪个项目正在调用 API? cloud.google.com/endpoints/docs/openapi/when-why-api-key【参考方案2】:

我相信gcloud alpha services api-keys list 是您要的? - https://cloud.google.com/sdk/gcloud/reference/alpha/services/api-keys/list

【讨论】:

感谢 Zaar,这是一个好的开始,理想情况下,我希望从 Api Key 获取更多数据(名称/ID/组织等...),并且作为锦上添花的能力退款到这个项目会很棒。 嗯,项目编号是键名的一部分。 gcloud alpha services api-keys describe <key name> 中提供了更多信息

以上是关于从 Google GCP 项目凭据 API 密钥中检索信息的主要内容,如果未能解决你的问题,请参考以下文章

您的应用包含公开的 Google Cloud Platform (GCP) API 密钥

如何从本地机器访问 GCP bigquery API?

您的应用包含公开的 Google Cloud Platform (GCP) API 密钥。有关详细信息,请参阅此 Google 帮助中心文章

尝试保存凭据时,使用Google Drive API库和Play with Java会冻结/锁定应用程序

如何将 Google Cloud Vision API 凭据密钥文件指向 yii2 框架中的 GOOGLE_APPLICATION_CREDENTIALS 变量

Google Analytics API - 通过身份验证后无法添加服务