我是多个GCP组织和项目的一部分。当我运行gcloud config configurations list
时,我得到:
NAME IS_ACTIVE ACCOUNT PROJECT
default False knub@org_1.com org1
project_b True knub@org_2.com org2
现在我想跑了
from tensorflow.python.lib.io import file_io
file_io.file_exists("gs://bucket_from_project_b/test.txt")
但我得到了错误
knub@org_1.com does not have storage.objects.get access to
gs://bucket_from_project_b/test.txt`
即使活动项目是project_b
,也会发生这种情况。其他一切,如gcloud
和gsutil
,都工作并尊重当前活动的配置。你知道吗
如何使file_io
尊重我的活动配置?
问题是
file_io
使用了~/.config/gcloud/application_default_credentials.json
中的应用程序凭据,而不是~/.config/gcloud/active_config
中的活动配置。 此外,当一个人在项目之间切换时,application_default_credentials.json
不会更新(通过gcloud config configurations activate default
),但必须在切换后通过调用gcloud auth application-default login
再次手动更新。你知道吗相关问题 更多 >
编程相关推荐