我正在使用服务帐户并在我尝试使用个人帐户登录时获得此信息,但我不确定这意味着什么是存储的确切含义或分支的含义。 VM上存储了哪些凭据以及它们存储在何处?假设我想返回并删除这些凭据,我该怎么做?
You are running on a Google Compute Engine virtual machine.
It is recommended that you use service accounts for authentication.
You can run:
$ gcloud config set account ``ACCOUNT''
to switch accounts if necessary.
Your credentials may be visible to others with access to this
virtual machine. Are you sure you want to authenticate with
your personal account?
答案 0 :(得分:1)
我想这取决于您在安装过程中的配置,但默认情况下会将您的凭据保存在~/.config/gcloud
下。
在那里,它取决于您使用的产品以及您如何进行身份验证。常规的是credentials.db
。如果您cat
该文件,则您将能够看到refresh tokens,这是危险的部分。
可以在~/.config/gcloud/legacy_credentials/
下找到其他一些凭据,如果您使用gsutil
工具,则可能会在~/.gsutil
下找到凭据。
如果您想全部删除它们,请rm
和~/.config/gcloud
文件夹~/.gsutil
。
此外,在运行操作时使用标记--verbosity debug
会显示保存令牌的位置(-DD
标记为gsutil
)。
Google Cloud SDK的代码主要是用(非常好的)python编写的,因此如果您感到好奇,可以花一点时间阅读该工具的代码。
我个人使用gcloud
工具的黑客版本来修改我在默认版本中不喜欢的一些auth参数,这些参数是硬编码的(sed
救援!),我甚至不是一个python dev,所以你可以猜到代码是多么容易理解。
SDK的默认安装位于~/google-cloud-sdk/
,因此可以在gcloud
下找到~/google-cloud-sdk/lib/googlecloudsdk/
的大部分代码。