我无法以非交互方式激活我的 Google Cloud 服务帐户;即使在阅读了几个 SO 线程之后。
- 创建服务帐号
gcloud iam service-accounts create my-awesome-acct ...
- 为服务帐号创建角色
gcloud iam roles create AwesomeRole \
--permissions storage.objects.create,storage.objects.delete ....
- 生成密钥
gcloud iam service-accounts keys create ~/awesome-key.json ...
- 激活服务帐号
gcloud auth activate-service-account my-awesome-acct ~/awesome-key.json
我的问题
即使按照上述步骤,当我运行gsutil ...
命令时,我仍然收到错误消息:
$ gsutil cp my_file.tgz gs://my_bucket
Copying file://my_file.tgz [Content-Type=application/x-tar]...
Your credentials are invalid. Please run
$ gcloud auth login
我可以让它工作的唯一方法是实际运行gcloud auth login
并允许在 Web 浏览器中进行身份验证。
难道我做错了什么?或者这是否适用于每个服务帐户?