gcloud安装在具有服务级别帐户权限问题的gce实例上

时间:2014-02-27 22:32:42

标签: google-cloud-storage google-compute-engine google-cloud-platform gcloud

我启动了启用了服务级别帐户的实例。例如,它有storage-rw set。我确认实例有那些。现在每当我从实例中运行gsutil ls gs:// my_bucket时我都会收到错误:Failure:unauthorized_client。

gcloud auth list返回

Credentialed accounts:
 - xxxx@developer.gserviceaccount.com (active)

我需要在实例中使用gcloud sdk,因为我需要除gcutil和gsutil之外的更多组件。

所以我的问题是如何授权gcloud使用xxxx@developer.gserviceaccount.com帐户,因此仅在实例上指定权限,而不是我对个人拥有完全权限的个人用户帐户?

2 个答案:

答案 0 :(得分:6)

gcloud CLI绝对可以处理Google Compute Engine服务帐户。如果您在$ gcloud auth list时将其视为“(有效)”,那就足够了。

这里有两件事可能出错:

  1. 您使用的是错误的gsutil。

    安装Google Cloud SDK时,它会创建google-cloud-sdk/bin/gsutil,这就是您要运行的那个。请$ which gsutil进行仔细检查。如果你正在运行google-cloud-sdk/platform/gsutil/gsutil,这是错误的,并且它不会知道gcloud可以告诉它的任何内容。

  2. 该帐户无权访问您尝试检查的存储分区。您必须要求存储桶的所有者将其添加到拥有该存储桶的项目中。

  3. 来源:Google Cloud SDK的工程师

答案 1 :(得分:-1)

请参阅此文档中的“对Google Compute Engine进行身份验证”部分:https://developers.google.com/compute/docs/gcutil/

相关问题