Google Big-query api 403-Forbidden Exception

时间:2015-02-09 06:55:25

标签: google-bigquery

我在使用Big-Query API的java应用程序执行查询时遇到以下JSON异常。以下是我得到的例外情况:

    {
    "error": {
    "errors": [
    {
    "domain": "global",
    "reason": "accessDenied",
    "message": "Access Denied: Job eco-span-847:job_LyHmZIvlY1_0J8JQ3pxThEBf19I: The user does not have permission to run a query in project eco-span-847"
    }

],
"code": 403,
"message": "Access Denied: Job eco-span-847:job_LyHmZIvlY1_0J8JQ3pxThEBf19I: The user does not have permission to run a query in project eco-span-847"
}
}

为什么会发生这种情况?我该如何解决这个问题?

2 个答案:

答案 0 :(得分:6)

要在项目中插入查询作业,调用用户必须至少是项目的Reader。

使用BigQuery API时,您需要为某些用户构建具有OAuth凭据的客户端。对于程序化访问,这通常是服务帐户标识。创建新服务帐户时,该帐户不会自动为您的项目添加成员资格角色。

要更新作为项目成员的用户和服务帐户,请转到项目的https://console.developers.google.com/,在导航面板中选择“权限”,并确保您使用的用户或服务帐户身份是该项目的“读者”。

答案 1 :(得分:0)

  1. 检查电子邮件/服务帐户是否已添加到 Google Cloud 的 IAM&Admin。
  2. 验证使用特定 api 的角色/权限。 access control

如果以上不满足,请与项目的所有者/管理员沟通以添加它们。