GCE Требует разрешения «compute.zones.list» для «projects/someproject»

GCE Требует разрешения «compute.zones.list» для «projects/someproject»

Я создал проект в GCP. Затем я создал учетную запись службы с Compute Adminролью. После этого я включил ее Compute Engine APIдля своего проекта, но не могу работать с экземплярами:

#gcloud compute instances list  
ERROR: (gcloud.compute.instances.list) Some requests did not succeed:
- Required 'compute.zones.list' permission for 'projects/someproject'

Что я делаю не так ?

решение1

Проверьте, что учетная запись службы, которую вы используете для запуска этой команды, имеет правильные права.Роль вычислительного движка. Это можно сделать здесь: IAM и администрирование > IAM.

-- ОБНОВЛЯТЬ --

Для проверки того, чтоучетная запись службыимеет необходимые разрешения, выполните следующие команды в Cloud Shell:

$ gcloud iam service-accounts keys create key.json \ --iam-account [email protected]

Приведенная выше команда создаст и загрузит ключ для этой учетной записи службы в формате JSON.

$ gcloud projects add-iam-policy-binding some-project-name \ --member serviceAccount:[email protected] \ --role=roles/compute.admin

Эта команда назначит роль compute.admin учетной записи службы new-sa.

$ gcloud auth activate-service-account --key-file=key.json

$ gcloud compute instances list

И с этими, выдавать себя зановый-saучетную запись службы, используя уже загруженный файл key.json, и выполните соответствующую команду для получения списка экземпляров вимя-некоторого-проектапроект. Если это успешно, то проблема в чем-то другом.

решение2

Первый раз я создал учетную запись службы "cloud66" в тестовом периоде Google. Скорее всего, это повлияло на права доступа. Затем я переключил тарификацию с тестового периода на платную. Я удалил и заново создал учетную запись службы cloud66 в разделе "APIs & Services -> Credentials". Но в разделе "IAM" была политика доступа для "cloud66" с ролью "ComputeAdmin". Когда я удалил политику доступа из раздела "IAM" и заново создал учетную запись службы, проблема решилась.

Связанный контент