Разрешение учетной записи службы облачной сборки для создания - PullRequest
0 голосов
/ 11 февраля 2020

У меня установлен env как приложение Cloud build (приложение Github) для предоставления терраформ через облачную сборку в Google Cloud Platform. Сборка представляет собой простое облако composer с облачными функциями, которое создает эти ресурсы вместе с нужными учетными записями и участниками. Однако, только разрешение владельца может выполнить это успешно, я хочу иметь наименьшие привилегии для учетной записи службы облачной сборки. Я использовал много ролей, и ничто не похоже на успех. т.е. создать учетную запись службы, редактор, администратор контекста доступа, утверждающий доступ. Когда я запускаю сборку с помощью github commit, я получаю эту ошибку, отличную от указания владельца в качестве роли

Ошибка: Ошибка применения политики IAM для cloudfunctions cloudfunction googleapi: Ошибка 403: Разрешение

Ошибка: Пакет «iam-project-redacted modifyIamPolicy» для запроса «Создание ролей членов IAM / composer .worker serviceAccount:composer-env-account@redacted.iam.gserviceaccount.com для \» проекта \\ «redacted \\« \ »» вернул ошибку: Ошибка применения политики IAM для проект "отредактирован": ошибка установки политики IAM для проекта "отредактирован": googleapi: ошибка 403: вызывающая сторона не имеет разрешения, запрещено. Чтобы отладить отдельные запросы, попробуйте отключить пакетную обработку: https://www.terraform.io/docs/providers/google/guides/provider_reference.html#enable_batching

Существует ли политика / роль IAM, которая позволяет учетным записям служб успешно строить через облачную сборку?

Если для роли Владельца установлена ​​учетная запись службы Cloudbuild, все будет успешно построено

1 Ответ

0 голосов
/ 11 февраля 2020

Учетной записи службы Cloud Build по умолчанию назначена роль учетной записи службы Cloud Build, которая имеет разрешения , указанные здесь . Обратите внимание, что вы будете ограничены только в выполнении следующих задач : которые включают выполнение соответствующих действий для успешной сборки (доступ к облачному хранилищу исходного кода, облачному хранилищу и реестру контейнеров).

Наряду с ролью учетной записи Cloud Build Service вам необходимо предоставить дополнительные роли в зависимости от того, что еще вы делаете с Cloud Build.

В конкретном случае вашего сообщения об ошибке вам нужно будет добавить роль разработчика облачных функций , чтобы получить полный доступ к облачным функциям. Вся процедура документирована здесь .

Существуют аналогичные роли, если вы также развертываете в App Engine или управляете Google Kubernetes Engine, et c. Найти весь список доступных ролей здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...