gcloud: The user does not have access to service account “default”

拈花ヽ惹草 提交于 2019-11-29 19:52:59

问题


I attempting to use an activated service account scoped to create and delete gcloud container clusters (k8s clusters), using the following commands:

gcloud config configurations create my-svc-account \
   --no-activate \
   --project myProject


gcloud auth activate-service-account my-svc-account@my-project.iam.gserviceaccount.com \
   --key-file=/path/to/keyfile.json \
   --configuration my-svc-account

gcloud container clusters create a-new-cluster \
   --configuration my-svc-account \
   --project= my-project
   --zone "my-zone"

I always receive the error:

...ERROR: (gcloud.container.clusters.create) ResponseError: code=400, message=The user does not have access to service account "default".

How do I grant my-svc-account access to the default service account for GKE?


回答1:


After talking to Google Support, the issue was that the service account did not have a "Service Account User" permissions activated. Adding "Service Account User" resolves this error.




回答2:


Add the following role to the service account who makes the operation:

Service Account User

Also see:

  • https://cloud.google.com/kubernetes-engine/docs/how-to/iam#service_account_user

  • https://cloud.google.com/iam/docs/service-accounts#the_service_account_user_role

  • https://cloud.google.com/iam/docs/understanding-roles




回答3:


For those that ended up here trying to do an Import of Firebase Firestore documents with a command such as:

gcloud beta firestore import --collection-ids='collectionA','collectionB' gs://YOUR_BUCKET

I got around the issue by doing the following:

  1. From the Google Cloud Console Storage Bucket Browser, add the service account completing the operation to the list of members with a role of Storage Admin.
  2. Re-attempt the operation.

For security, I revoked the role after the operation completed, but that's optional.



来源:https://stackoverflow.com/questions/40367866/gcloud-the-user-does-not-have-access-to-service-account-default

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!