获取没有gcloud的服务帐户身份验证令牌?

Jac*_*own 17 google-cloud-platform gcloud

是否可以在不使用的情况下获取Google Cloud服务帐户的授权持有人令牌gcloud

也就是说,我想提出一个HTTP请求(可能是我的JSON密钥文件以某种方式签名),这将为我提供相当于

gcloud auth application-default print-access-token
Run Code Online (Sandbox Code Playgroud)

此请求将在我自己的服务器上进行,我可能不希望在gcloud那里安装,并且我无法访问可能提供此内容的任何内部服务器元数据(例如,与计算引擎一样).

是否有一些oauth端点提供这样的东西?

或者,有没有办法生成长寿命令牌gcloud

我是Google Cloud生态系统的新手,请原谅我的无知和术语......

Gal*_*one 14

我认为这正是您所寻找的:

https://developers.google.com/identity/protocols/OAuth2#serviceaccount

老实说,我不认为你想要达到的目标是正确的,正在运行

gcloud auth application-default print-access-token
Run Code Online (Sandbox Code Playgroud)

你得到一个不打算做你想要的代币:

"当您开发通常使用服务帐户但需要在本地开发环境中运行代码的代码时,此命令非常有用,在此环境中,提供用户凭据更容易."

这将为您提供更多实施此解决方案的指导:https: //developers.google.com/identity/protocols/OAuth2ServiceAccount