Назад | Перейти на главную страницу

Как предоставить экземпляр GCP для входа в Compute OS

Я пытаюсь предоставить доступ только одному из членов группы для входа в Compute OS, но мне не удалось его установить.

Как я справился?

Шаг 1

In the appropriate project under the IAM I added the user email and given Role for Compute OS Login after that.

Шаг 2

В терминале пробовал

# glcoud init 

После того, как я предоставил всю необходимую информацию, я попытался войти в систему с помощью gcloud.

# gcloud compute ssh sjkeerthi@test-instance -- -p 2020

No zone specified. Using zone [europe-west2-c] for instance: [test-instance].
Updating project ssh metadata...failed.                                                                                                              
Updating instance ssh metadata...failed.                                                                                                             
ERROR: (gcloud.compute.ssh) Could not add SSH key to instance metadata:
 - The user does not have access to service account '1096586xxxxx-compute@developer.gserviceaccount.com'.  User: 'sjkeerthi@xxxx.com'.  Ask a project owner to grant you the iam.serviceAccountActor role on the service account

Примечание: - Даже я установил в MetaData enable-oslogin = True

Я думаю, что следующая общедоступная документация по Настройка ролей входа в ОС для учетных записей пользователей было бы полезно. Полученная вами ошибка показывает, что у вашего пользователя отсутствует роль (iam.serviceAccountUser).

The user does not have access to service account '1096586xxxxx-compute@developer.gserviceaccount.com'. User: 'sjkeerthi@xxxx.com'. Ask a project owner to grant you the iam.serviceAccountActor role on the service account

В соответствии с примером, приведенным в общедоступном документе, вы можете предоставить мгновенный доступ своим пользователям с помощью следующего процесса:

Предоставьте пользователю необходимые роли доступа к экземпляру.

Пользователи должны иметь следующие роли:

  1. Роль iam.serviceAccountUser.

Одна из следующих ролей входа:

  1. Роль compute.osLogin, которая не предоставляет права администратора
  2. Роль compute.osAdminLogin, предоставляющая права администратора.

Вам необходимо добавить роль Актера учетной записи службы в учетную запись пользователя, чтобы она могла действовать как ServiceAccount «1096586xxxxx-compute@developer.gserviceaccount.com».

Эта роль устарела. Теперь вам необходимо предоставить роль пользователя учетной записи службы и создателя токена учетной записи службы учетной записи пользователя в IAM.

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

Если вы пытаетесь использовать ssh из экземпляра Google Compute Engine (GCE) в другой экземпляр GCE, убедитесь, что у исходного экземпляра есть область действия Compute Engine, установленная для чтения / записи в его настройках конфигурации, чтобы он мог получить доступ к другим экземплярам GCE.

Вам необходимо добавить следующие роли в свою учетную запись IAM, как показано здесь:

  • Пользователь учетной записи службы, roles/iam.serviceAccountUser
  • Любая из следующих ролей:
    • Вход в Compute OS, roles/compute.osLogin если вы просто хотите войти в систему как обычный пользователь
    • Вход администратора Compute OS, roles/compute.osAdminLogin если вы хотите иметь возможность войти в систему как администратор или иметь привилегии root