Firebase 在谷歌云上自动生成API密钥

Firebase 在谷歌云上自动生成API密钥,firebase,google-api,google-cloud-functions,google-cloud-api-gateway,Firebase,Google Api,Google Cloud Functions,Google Cloud Api Gateway,我们目前正在开发基于谷歌云功能的API,以及谷歌的API网关 由于每个购买API访问权限的客户都应该获得自己的API密钥,我想知道是否有方法使用和API创建这些API密钥。我想实现的是,客户能够在自己的设置中请求API密钥,所以点击一个按钮,这会触发一个函数,生成一个密钥并在前端向客户显示 在搜索了很长一段时间后,我没有找到任何关于如何建造这个的信息。也可能是我的做法完全错误——如果是这样的话,请烤我,并给我一些建议 提前感谢您的回答 谷歌凭证不能通过程序创建,因为它们必须手动创建。谷歌凭证不能

我们目前正在开发基于谷歌云功能的API,以及谷歌的API网关

由于每个购买API访问权限的客户都应该获得自己的API密钥,我想知道是否有方法使用和API创建这些API密钥。我想实现的是,客户能够在自己的设置中请求API密钥,所以点击一个按钮,这会触发一个函数,生成一个密钥并在前端向客户显示

在搜索了很长一段时间后,我没有找到任何关于如何建造这个的信息。也可能是我的做法完全错误——如果是这样的话,请烤我,并给我一些建议


提前感谢您的回答

谷歌凭证不能通过程序创建,因为它们必须手动创建。

谷歌凭证不能通过程序创建,因为它们必须手动创建。

事实上,有一些东西。有一段时间是beta版(1年多以前),很快又回到alpha版,而且没有文档记录(或者相当糟糕)

正如您在gcloud alpha命令中看到的,您可以将API键与CLI和API一起使用。使用此命令测试并了解如何使用API键的更多信息

gcloud alpha services api-keys create --display-name="created by API" --log-http

小心使用

首先,我没有这个API的更新,它会继续存在吗?谷歌的生命周期和“无新闻”很奇怪,请记住,API可以随时删除

其次,API密钥是一个长期存在的令牌,出于安全原因,不建议使用它。但有时,它总比没有好,所以在没有其他解决方案时使用它是可以接受的。否则,更喜欢OAuth


最终,API密钥验证项目,而不是客户/用户。在API网关请求转发后,您将不会在头数据中包含它。只有项目ID(或编号,我不记得了)。因此,如果要区分每个客户/用户,需要创建不同的项目,并在每个项目中生成密钥。如果您在API网关上实现速率限制,情况也是一样的:配额是针对每个项目的,而不是针对每个API键的。

事实上,有一些东西。有一段时间是beta版(1年多以前),很快又回到alpha版,而且没有文档记录(或者相当糟糕)

正如您在gcloud alpha命令中看到的,您可以将API键与CLI和API一起使用。使用此命令测试并了解如何使用API键的更多信息

gcloud alpha services api-keys create --display-name="created by API" --log-http

小心使用

首先,我没有这个API的更新,它会继续存在吗?谷歌的生命周期和“无新闻”很奇怪,请记住,API可以随时删除

其次,API密钥是一个长期存在的令牌,出于安全原因,不建议使用它。但有时,它总比没有好,所以在没有其他解决方案时使用它是可以接受的。否则,更喜欢OAuth


最终,API密钥验证项目,而不是客户/用户。在API网关请求转发后,您将不会在头数据中包含它。只有项目ID(或编号,我不记得了)。因此,如果要区分每个客户/用户,需要创建不同的项目,并在每个项目中生成密钥。如果您在API网关上实施速率限制,情况也是一样:配额是每个项目的,而不是每个API密钥。

谢谢您的快速回答!太糟糕了。我已经说了大约八年了。谢谢你的快速回答!太糟糕了。我已经说了八年了。