我使用Windows任务管理器编写了一个任务。它包括通过bigrquery
库访问BigQuery数据。我已将凭据存储在本地文件httr-oauth
中。
我正在使用这些库:
library(bigrquery)
library(assertthat)
library(httpuv)
该任务已经工作了几周,我突然在日志文件(.Rout)中看到此消息:
Waiting for authentication in browser...
Press Esc/Ctrl + C to abort
Please point your browser to the following url:
https://accounts.google.com/o/oauth2/auth?client_id=....
看起来需要刷新令牌,但如果我手动运行脚本,一切正常,我的httr-oauth
工作正常。
有关正在发生的事情的任何想法?提前谢谢!
答案 0 :(得分:0)
简而言之,您需要使用服务帐户。
了解如何配置库驱动程序以使用Google 服务帐户验证连接。当您以这种方式验证连接时,驱动程序代表服务帐户处理身份验证,因此不直接涉及单个用户帐户,也不需要用户输入。
要以这种方式验证您的连接,您必须提供Google服务帐户电子邮件地址以及服务帐户的私钥文件的完整路径。您可以在设置服务帐户时生成并下载私钥文件。
更多信息:https://developers.google.com/identity/protocols/OAuth2ServiceAccount