Cloud Run验证CLI的最终用户

时间:2019-08-27 09:14:01

标签: google-cloud-platform google-cloud-run

我们正在将现有的API移植到Cloud Run,并希望利用内置的IAM身份验证功能。这意味着生成签名的JWT用作授权承载令牌。适用于iOS,Android和Web的documentation that describes how to do this。但是,尚不清楚在用户本地计算机上运行CLI的最佳方法是什么。

我们过去所做的是使用Google用户的本地凭据通过API进行授权(使用默认应用程序凭据),但我不清楚如何从Go中生成适当的access_id。只有服务帐户类型才有可能这样做。不是授权用户类型。我能够获得有效的access_id的唯一方法是使用gcloud命令。

gcloud config config-helper --format json

除了使用上述命令外,是否还有一种更合适的方法可以在CLI中生成用户凭证以使用Cloud Run托管服务进行授权?

1 个答案:

答案 0 :(得分:0)

Cloud Run使用Oauth 2.0(OIDC)身份令牌进行授权。用户帐户和服务帐户均支持此功能。在authorization: bearer token标头中使用OAuth访问令牌的位置,请使用身份令牌。

要进行实验,您可以使用以下命令生成身份令牌:

gcloud auth print-identity-token

使用Cloud Run,您需要为身份令牌指定audience值。下面的链接中提供了详细信息。

还有一些其他链接可帮助您入门:

我在Cloud Run Identity上写的文章:

Google Cloud Run - Identity

Google Cloud – Go – Identity Based Access Control

Google Cloud Run文档:

Google Cloud Run Service Identity

Google Cloud Run Authenticating end users