Назначение областей учетной записи службы gcloud - PullRequest
0 голосов
/ 14 октября 2018

Я пытаюсь добавить дополнительную учетную запись службы в экземпляр GCE (виртуальная машина Google Cloud), чтобы работающие там инструменты могли переключаться между стандартной учетной записью службы, назначенной виртуальной машине GCloud, и другой учетной записью, принадлежащей другому проекту.,Из документации ясно, как я могу назначить области учетной записи по умолчанию (доступно в настройках виртуальной машины, когда она выключена).Но я не могу понять, как установить области для учетной записи службы, добавленной вручную:

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

Теперь учетная запись отображается в gcloud auth list, но неясно, какие области назначены ей.Другой способ - использовать gcloud auth application-default login с параметром --scopes, но я понимаю, что его невозможно использовать с учетными записями служб.

Google Cloud документация говорит

создать учетную запись службы с соответствующими областями с помощью консоли облачной платформы Google

, но я не могу найти никакой опции для добавления Scopes к учетной записи службы, только роли, которые возможны через IAM.Кто-нибудь знает, как я могу назначить области своей учетной записи службы?

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

Вы можете использовать команду , например :

gcloud compute instances set-service-account <instance name> --service-account <service account> --scopes <comma separated scopes here, alias or full URI>

Документация команды здесь указывает псевдонимы, а также полный доступный URI.

Вы также можете использовать команду, например:

gcloud alpha compute instances set-scopes <instance name> --scopes <comma separated scopes, alias or full URI>

Документация здесь

Области можно применять к учетной записи службы по умолчанию и экземплярам виртуальной машины.Другие учетные записи служб (не по умолчанию) обрабатываются как учетные записи пользователей, и поэтому они не используют области, как учетная запись службы по умолчанию.Нестандартные учетные записи служб используют разрешения IAM, как и учетная запись пользователя, поэтому вы не сможете редактировать области, только роли IAM, такие как учетная запись пользователя.Если вы собираетесь использовать области в сочетании с учетной записью пользователя, то и для учетной записи компьютера, и для пользователя потребуется доступ к объекту API для доступа к нему.Подробнее о сочетании областей и служебных учетных записей здесь .

0 голосов
/ 14 октября 2018

Я думаю, что вы можете добавить области, пройдя через консоль администратора.На странице «Безопасность» нажмите «Дополнительные параметры».Возможно, вам придется нажать Показать больше, чтобы увидеть дополнительные настройки.В разделе «Аутентификация» нажмите «Управление доступом клиента API».В поле «Имя клиента» введите идентификатор клиента вашей учетной записи.Примечание. Подробнее о том, как создать идентификатор клиента, см. В разделе «Создание учетной записи службы».

В поле «Один или несколько областей действия API» скопируйте и вставьте необходимые области.

Нажмите «Авторизовать».Рядом с указанным именем идентификатора клиента убедитесь, что все области отображаются с описанием.Если это не так, в поле «Один или несколько областей API» введите правильную область еще раз и нажмите «Авторизовать».Когда все области введены правильно, вернитесь в консоль разработчиков Google и нажмите Сохранить.

...