Я попытался построить конвейер с помощью GitLab для развертывания в Google Cloud.
Все работает отлично, за исключением команды gcloud для развертывания.
У меня возникла следующая ошибка: ERROR: (gcloud.run.deploy) PERMISSION_DENIED: Разрешение «iam.serviceaccounts.actAs» отклонено для учетной записи службы[email protected](или его может не быть)
Я искал решение в Stack Overflow и добавил «iam.serviceaccounts.actAs» с помощью команды gcloud: gcloud projects add-iam-policy-binding YYYYY --member='serviceAccount:[email protected]' --role='roles/iam.serviceAccountUser'
Роль добавлена в учетную запись службы, но развертывание по-прежнему не удается.
Есть идеи ?
решение1
При создании определенных ресурсов Google Cloud у вас есть возможность прикрепить учетную запись службы. Прикрепленная учетная запись службы действует как идентификатор любых заданий, запущенных на ресурсе, позволяя заданиям проходить аутентификацию в API Google Cloud.
Для большинства сервисов Google Cloud пользователям необходимо разрешение на выдачу себя за учетную запись сервиса, чтобы прикрепить эту учетную запись сервиса к ресурсу. Это означает, что пользователю необходимо разрешение iam.serviceAccounts.actAs
на учетную запись сервиса.
Я предлагаю вам прочитать этодокументи проверьте, реализовали ли вы все необходимое для имитации учетной записи службы.