我不知道为什么,但我正在运行 gcloud auth login
,我尝试了 beta 和 application-default。他们都没有创建文件:~/.config/gcloud/credentials
,而是我可以找到~/.config/gcloud/legacy_credentials
。
我遇到的问题是我使用的库不需要 legacy_credentials,并且重命名文件夹不起作用。
这是我的设置:
Google Cloud SDK 183.0.0
alpha 20
17.12.08
beta 2017.12.08
bq 2.0.27
core 2017.12.08
gsutil 4.28
我也在 digitalocean 上使用 Ubuntu 16.04.3 LTS
。我很乐意提供我能想到的任何其他信息。
旧文件夹中的凭据包含:
" ============================================================================
" Netrw Directory Listing (netrw v155)
" /root/.config/gcloud/legacy_credentials/matt@mindbrainhive.org
" Sorted by name
" Sort sequence: [\/]$,\<core\%(\.\d\+\)\=\>,\.h$,\.c$,\.cpp$,\~\=\*$,*,\.o$,\.obj$,\.info$,\.swp$,\.bak$,\~$
" Quick Help: <F1>:help -:go up dir D:delete R:rename s:sort-by x:special
" ==============================================================================
../
./
.boto
adc.json
最佳答案
gcloud
不再使用 ~/.config/gcloud/credentials
,而是将凭证存储在 sqlite3 ~/.config/gcloud/credentials.db
。
这些凭证文件被认为是 gcloud
的内部文件,它们可以随时更改。你不应该使用它们。您可能想要使用的是
gcloud auth application-default login
而不是 gcloud auth login
。前者将为用户登录帐户创建 ~/.config/gcloud/application_default_credentials.json
key 文件。
也就是说,根据您尝试执行的操作,您可能希望使用服务帐户(而不是用户帐户)。您可以通过
创建 key 文件gcloud iam service-accounts keys create
见 documentation了解更多信息。或者您可以使用 Google Cloud Platform Console创建 key 文件。
一旦您获得 json key 文件,您就可以在您的应用程序中使用它作为应用程序的默认凭据,请参阅 https://developers.google.com/identity/protocols/application-default-credentials#howtheywork
您也可以通过 gcloud auth activate-service-account
命令在 gcloud
中使用此 key 。
关于authentication - Gcloud auth 登录保存到 legacy_credentials 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48088841/