如何使用服务帐户和bigrquery包进行身份验证?

Zer*_*ack 3 authentication r google-bigquery server

我已经能够使用googleAuth和使用与服务帐户关联的json文件进行身份验证bigQueryR.

# Load Packages
global.packages <- c("bigQueryR", "googleAuthR")

### Apply require on the list of packages; load them quietly
lapply(global.packages, require, character.only = TRUE, quietly = TRUE)

Sys.setenv("GCS_AUTH_FILE" = "json_file_location")

#Authenticate Google BQ
googleAuthR::gar_attach_auto_auth("https://www.googleapis.com/auth/bigquery",
                                  environment_var = "GCS_AUTH_FILE")
Run Code Online (Sandbox Code Playgroud)

这有效,我可以开始使用来自的功能bigQueryR.

现在假设我仅限于该bigrquery软件包,如何使用此软件包使用服务帐户进行身份验证?

我看过这里的文档无济于事:https: //cran.r-project.org/web/packages/bigrquery/bigrquery.pdf

我在互联网上遇到的资源建议使用 bigQueryR包来代替bigrquery.

例如,这个相关的stackoverflow问题: 在闪亮的应用程序中使用bigrquery auth.

但我需要的功能只有bigrquery.

小智 13

set_service_token() 现在已弃用。

使用bq_auth()来代替:

bq_auth(path = "location_of_service_token.json")
Run Code Online (Sandbox Code Playgroud)

来源:https : //rdrr.io/cran/bigrquery/man/bigrquery-deprecated.html


Mar*_*keD 8

您可以使用该功能set_service_token()bigrquery与你在使用相同的服务JSON认证bigQueryR

library(bigrquery)

set_service_token("location-of-service.json")
Run Code Online (Sandbox Code Playgroud)

资料来源:https://github.com/rstats-db/bigrquery/issues/22