如何使用服务帐户验证com.google.cloud.bigquery.BigQuery`

Ela*_*da2 2 java google-api-java-client google-cloud-platform

我想使用这个图书馆

com.google.cloud.bigquery.BigQuery

就像在此样品中:

https://cloud.google.com/bigquery/create-simple-app-api

但是,我想BigQuery使用服务帐户对客户端进行身份验证。

我怎样才能做到这一点?

我只看到默认的凭据方式。

  BigQuery bigquery =
                new BigQueryOptions.DefaultBigqueryFactory().create(BigQueryOptions.defaultInstance());
Run Code Online (Sandbox Code Playgroud)

小智 5

构建服务时,请尝试使用setCredentials和ServiceAccountCredentials.fromStream。

BigQuery bigquery = BigQueryOptions.newBuilder()
    .setCredentials(
       ServiceAccountCredentials.fromStream(
         new FileInputStream("your_json_service_keyfile.json"))
    )
    .build().getService()
Run Code Online (Sandbox Code Playgroud)

应该在Google的API文档中更好地记录下来。

希望对您有帮助,这是我对stackoverflow的第一个答案:-)