我们在 Google Cloud 中是不是有类似 AWS 命名配置文件的功能?
Posted
技术标签:
【中文标题】我们在 Google Cloud 中是不是有类似 AWS 命名配置文件的功能?【英文标题】:Do we have a AWS Named Profile like functionality in Google Cloud?我们在 Google Cloud 中是否有类似 AWS 命名配置文件的功能? 【发布时间】:2021-03-28 03:45:36 【问题描述】:我想知道 Google Cloud 是否提供类似 AWS 命名配置文件的功能,即我想在运行时将凭证传递给 Google Cloud 的 gsutil 命令。
例如,在下面的场景中,我想在两个不同的谷歌云存储桶中处理数据(使用 gsutil)时传递不同的配置/凭据。
--Google Cloud(GCP 不工作场景)
gsutil cp -r C:/Users/Downloads/crm.txt gs://bucket_crm_123 --configuration=config1
gsutil cp -r C:/Users/Downloads/payroll.txt gs://bucket_payroll_123 --configuration=config2
--AWS(AWS工作场景)
aws s3 cp C:/Users/Desktop/GCFR/testfiles/ s3://hive1s3/ --profile User1 --recursive
aws s3 cp C:/Users/Desktop/GCFR/testfiles1/ s3://hive2s3/ --profile User2--recursive
因此,简而言之,我想确保用户/配置只有在拥有权限的情况下才能访问 Google Cloud 存储桶。
【问题讨论】:
【参考方案1】:你的意思是你想要像“运行方式”这样的标志功能??
如果是,您可以使用“服务帐户”做同样的工作。
创建具有适当权限的服务帐户。(可以访问所需存储桶的权限)
并使用您创建的服务帐户在您的 gsutil 命令中添加 -i 标志。
请参阅here 以获取有关 -i 标志的更多信息。
或者如果您必须指定用户,您可以使用以下命令更改运行命令的用户。
gcloud 配置设置帐号 USERACCOUNT
通过此命令更改用户帐户后运行 gsutil 命令。
Plus) 在运行“gcloud config set account”命令之前,您必须注册用于 gsutil 的用户帐户。
运行命令“gcloud auth login”并验证用户帐户。
只能使用在此进程中注册的用户帐户。
如果您想知道可以使用哪些用户帐户,请运行“gcloud auth list”命令。
【讨论】:
谢谢,但我在使用用户创建的服务帐户时收到以下错误。命令:gsutil -i crm-srv-acc@propane-calling-272510.iam.gserviceaccount.com ls 错误:“AccessDeniedException: Service account impersonation failed. Please go to the Google Cloud Platform Console (cloud.google.com/console), select IAM & admin,然后是 Service Accounts,并为您的原始帐户授予目标服务帐户上的 Service Account Token Creator 角色。” 似乎您没有使用服务帐户的权限.. 授予您的帐户适当的权限或 Go plan B以上是关于我们在 Google Cloud 中是不是有类似 AWS 命名配置文件的功能?的主要内容,如果未能解决你的问题,请参考以下文章
Google Cloud 上使用 Pub/Sub 的主/从模式
当我们将数据从加密的 AWS S3 存储桶发送到加密的 Google Cloud Storage 存储桶时,该数据是不是在传输过程中加密?
如何从Java脚本安全地调用Google Cloud Run服务?