我正在使用 bq 命令行工具从 Bigquery 表中进行查询。当我登录和开箱即用查询过程正在运行时,有没有办法让服务帐户身份验证持续存在?
我做的步骤:
- 我登录了linux盒子
通过运行验证服务帐户:
gcloud auth activate-service-account --key-file /somekeyFile.p12 someServiceAccount.gserviceaccount.com
从 bigquery 表查询,这工作正常:
bq --project_id=formal-cascade-571 query "select * from dw_test.clokTest"
但后来我从框中注销,然后重新登录。当我再次查询 Bigquery 表时:
bq --project_id=formal-cascade-571 query "select * from dw_test.clokTest"
它给了我错误:
您当前的活动帐户 [someServiceAccount.gserviceaccount.com] 没有任何有效凭据。
即使我传入私钥文件:
bq --service_account=someServiceAccount.gserviceaccount.com --service_account_credential_file=~/clok_cred.txt --service_account_private_key_file=/somekeyFile.p12 --project_id=formal-cascade-571 query "select * from dw_test.clokTest"
它给出了同样的错误:
您当前的活动帐户 [someServiceAccount.gserviceaccount.com] 没有任何有效凭据。
因此,每次我需要通过以下方式重新验证我的服务帐户时:
gcloud auth activate-service-account
有没有办法让经过身份验证的服务帐户凭据保持不变?
感谢您的帮助。