【问题标题】:Google Cloud API Service authorisation failure - forbidden accessGoogle Cloud API 服务授权失败 - 禁止访问
【发布时间】:2018-09-03 16:18:03
【问题描述】:

我目前在尝试通过 java 客户端访问谷歌云服务时收到以下错误:

Caused by: 
com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 
Forbidden
{
  "code" : 403,
  "errors" : [ {
    "domain" : "global",
    "message" : "xyz.iam.gserviceaccount.com does not have 
    storage.buckets.list access to project 123456.",
    "reason" : "forbidden"
  } ],
  "message" : "xyz.iam.gserviceaccount.com does not have 
storage.buckets.list access to project 123456."
}

到目前为止,我有:

  • 使用谷歌云帐户的登录详细信息安装并授权 sdk
  • 将服务帐户 xyz 的 GOOGLE_APPLICATION_CREDENTIALS 添加到我的环境变量中,并带有 json 密钥的路径
  • 给定项目 (123456) 的服务帐户 (xyz) 权限
  • 启用存储 API 和语音 API 的权限(未来的预期目标)

如何为给定项目的给定列表或 api 提供对服务帐户的访问权限?

【问题讨论】:

  • 存储桶与服务帐号是否在同一个项目中?

标签: java google-cloud-platform google-cloud-datastore google-cloud-storage


【解决方案1】:

该消息非常具体,不容置疑,但如果有问题,请分享当前分配给您的服务帐户的角色:

"xyz.iam.gserviceaccount.com 没有 storage.buckets.list 访问项目 123456。”

可能是您在https://console.cloud.google.com/iam-admin/iam/project 中分配给服务帐户的角色没有storage.buckets.list 访问权限。

要查看特定角色是否具有storage.buckets.list 访问权限,请在https://console.cloud.google.com/iam-admin/roles 中搜索该访问权限。这将输出具有此访问权限的角色列表,您可以查看您的服务帐户是否具有其中之一。

【讨论】:

  • 角色列表显示此特定角色已启用,但我仍然收到此错误
  • @ShubhamGoel 抱歉,不清楚您所说的“角色列表”是什么意思。如果您指的是“角色”选项卡,请提供“访问权限”,它将显示哪些角色拥有它。然后,您必须在 IAM 选项卡中分配这些角色。
【解决方案2】:

也可能是您设置了一个不存在的项目。例如,通过在 gcloud cli gcloud config set project personal 上运行以下命令,而项目的实际 ID 为personal-267000,如下所示

gcloud projects list | grep personal personal-267000 personal 203784673875

所以,一旦你正确设置它,gcloud config set project personal-267000,你的命令应该可以很好地工作。最简单的测试方法是触发以下 cli 命令gsutil ls。不要忘记确保您也在使用您想要的帐户:gcloud config configurations list

【讨论】:

    【解决方案3】:

    如果正在使用的存储桶在您的项目中,您可以随时尝试以您的用户身份运行 gsutil ch command

    gsutil acl ch -u your-service-account@example.com:WRITE gs://your-bucket
    

    【讨论】:

      【解决方案4】:

      您需要为服务帐户提供“存储管理员”访问权限。这可以在https://console.cloud.google.com/iam-admin/iam?project={your-project}中找到

      单击“继承”下的铅笔以编辑权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-06
        • 2023-04-02
        • 1970-01-01
        • 2018-12-05
        • 1970-01-01
        相关资源
        最近更新 更多