Попытка запустить:

gcloud services enable cloudresourcemanager.googleapis.com —project=$GOOGLE_CLOUD_PROJECT

Я получаю ошибку авторизации:

Enabling the Cloud Resource Manager API for project xxxxxxxxx... ERROR: (gcloud.services.enable) User [joe.bloggs@googlemail.com] does not have permission to access project [xxxxxxxxx] (or it may not exist): Service '—project=xxxxxxxxx' not found or permission denied.

Когда я проверяю средство устранения неполадок политики GCP, он говорит, что у меня есть роль владельца в проекте xxxxxxxxx. Однако вы можете видеть в консоли GCP мой адрес электронной почты как joe.bloggs@gmail.com, а в моем конфиге gcloud его joe.bloggs@googlemail.com. Я пытался изменить его на gmail.com в конфигурации gcloud и googlemail.com в роли владельца проекта, но, похоже, не смог.

0
Djadek 6 Май 2020 в 16:11

2 ответа

Сначала установите базовую аутентификацию с вашего терминала:

gcloud auth application-default login

Затем установите проект, как показано ниже:

gcloud config set project <put your project id>      

Затем создайте учетную запись службы с настройкой владельца

gcloud iam service-accounts create sa-name \
--description="sa-description" \
--display-name="sa-display-name"

Здесь sa-description - необязательное описание для учетной записи службы. sa-display-name - понятное имя для учетной записи службы. project-id - это идентификатор вашего проекта Google Cloud.

Затем добавьте политику владельца:

gcloud projects add-iam-policy-binding my-project-123 \
--member serviceAccount:sa-name@project-id.iam.gserviceaccount.com \
--role roles/owner

Затем создайте ключ учетной записи службы:

gcloud iam service-accounts keys create ~/key.json \
 --iam-account sa-name@project-id.iam.gserviceaccount.com

Затем используйте этот ключ:

export GCLOUD_APPLICATION_CREDENTIALS="~/key.json"
gcloud auth activate-service-account --key-file \
$GCLOUD_APPLICATION_CREDENTIALS

Затем включите:

gcloud services enable cloudresourcemanager.googleapis.com —project=$GOOGLE_CLOUD_PROJECT
0
Vishnu Nair 6 Май 2020 в 16:12

Я понимаю, что в учетной записи gmail, используемой для входа в gcloud, есть ошибка, попробуйте использовать Команда «gcloud auth list» для проверки учетной записи, используемой в gcloud, вы можете затем использовать "gcloud auth revoke --all" команда для выхода из всех аккаунтов в gcloud и после этого попробуйте " gcloud auth login email@address.com " для повторной регистрации с использованием правильной учетной записи.

Если адрес электронной почты владельца указан неверно в облачной консоли, и вы по-прежнему можете войти в систему с этой учетной записью, просто добавьте еще одну роль IAM с нужной учетной записью в качестве владельца в меню IAM, а затем при необходимости удалите учетную запись с ошибкой

0
Andres S 6 Май 2020 в 15:42