小编jpe*_*ell的帖子

如何配置Google BigQuery命令行工具以使用服务帐户?

我使用Google API控制台创建了一个服务帐户,并希望将此服务帐户与Google BigQuery CLI(bq)工具结合使用.

我一直在使用命令行工具使用〜/ .bigquery.v2.token中的有效OAuth2凭据成功访问BigQuery服务,但我似乎无法找到有关如何修改此文件的任何文档(或以其他方式配置该工具)改为使用服务帐户.

这是我当前的.bigquery.v2.token文件

{
    "_module": "oauth2client.client",
    "_class": "OAuth2Credentials",
    "access_token": "--my-access-token--",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "invalid": false,
    "client_id": "--my-client-id--.apps.googleusercontent.com",
    "id_token": null,
    "client_secret": "--my-client-secret--",
    "token_expiry": "2012-11-06T15:57:12Z",
    "refresh_token": "--my-refresh-token--",
    "user_agent": "bq/2.0"
}
Run Code Online (Sandbox Code Playgroud)

我的另一个文件:〜/ .bigqueryrc通常看起来像这样:

project_id = --my-project-id--
credential_file = ~/.bigquery.v2.token
Run Code Online (Sandbox Code Playgroud)

我已经尝试将credential_file参数设置为我的服务帐户的.p12私钥文件,但没有运气,它给了我以下错误

******************************************************************
** No OAuth2 credentials found, beginning authorization process **
******************************************************************
Run Code Online (Sandbox Code Playgroud)

并要求我转到浏览器中的链接以再次设置我的OAuth2凭据.

命令行工具的初始配置选项"init":

bq help init
Run Code Online (Sandbox Code Playgroud)

没有显示有关如何设置此工具以使用服务帐户的有用信息.

google-bigquery

10
推荐指数
3
解决办法
5944
查看次数

标签 统计

google-bigquery ×1