Google Cloud:从 Json 获取 Postman 的授权令牌

Google Cloud: Get authorization token from Json for Postman

我正在尝试使用 Postman 触发经过身份验证的 GCP 云函数。

为此,我创建了一个具有“Cloud Functions Invoker”角色的专用服务帐户,并下载了一个结构如下的 .json 密钥:

{
  "type": "service_account",
  "project_id": "xxx",
  "private_key_id": "xxx",
  "private_key": "-----BEGIN PRIVATE KEY-----\n1234=\n-----END PRIVATE KEY-----\n",
  "client_email": "xxx.iam.gserviceaccount.com",
  "client_id": "xxxx",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "xxx.iam.gserviceaccount.com"
}

我尝试粘贴整个“private_key”(-----BEGIN PRIVATE KEY-----\n1234=\n-----END PRIVATE KEY-----\n)作为 Bearer Token,但我收到以下错误:

<title>401 Unauthorized</title>  

现在,如何使用 GCP 中的 .json 文件通过 Postman 进行身份验证?我应该使用哪些参数?

Google Cloud Functions 需要 OAuth 身份令牌进行授权。

Postman 无法处理 Google 云服务帐户 JSON 密钥来为您生成令牌。

您可以使用 CLI 生成令牌:

gcloud auth print-identity-token

令牌的有效期为一小时(3600 秒)。

在 HTTP header Authorization: bearer TOKEN.

中包含此令牌

gcloud auth print-identity-token