Аутентификация от имени сервисного аккаунта
Узнайте как аутентифицироваться в CLI:
Перед началом работы
- Аутентифицируйтесь в CLI как пользователь.
- Если у вас еще нет сервисного аккаунта, создайте его и настройте права доступа для него.
Аутентифицируйтесь от имени сервисного аккаунта
Чтобы аутентифицироваться от имени сервисного аккаунта:
-
Получите список сервисных аккаунтов, которые существуют в вашем облаке:
$ yc iam service-account --folder-id <ID каталога> list +----------------------+------------+ | ID | NAME | +----------------------+------------+ | aje3932acd0c5ur7dagp | default-sa | +----------------------+------------+
-
Создайте авторизованный ключ для сервисного аккаунта и сохраните его в файл
key.json
:$ yc iam key create --service-account-name default-sa --output key.json id: aje83v701b1un777sh40 service_account_id: aje3932acd0c5ur7dagp created_at: "2019-08-26T12:31:25Z" key_algorithm: RSA_2048
-
Добавьте авторизованный ключ сервисного аккаунта в профиль CLI.
-
Создайте новый профиль CLI:
$ yc config profile create sa-profile
-
Добавьте авторизованный ключ:
$ yc config set service-account-key key.json
-
-
Проверьте, что параметры для сервисного аккаунта добавлены верно:
$ yc config list service-account-key: id: aje83v701b1un777sh40 service_account_id: aje3932acd0c5ur7dagp created_at: "2019-08-26T12:31:25Z" key_algorithm: RSA_2048 public_key: | -----BEGIN PUBLIC KEY----- MIIBIjANBg... -----END PUBLIC KEY----- private_key: | -----BEGIN PRIVATE KEY----- MIIEvwIBAD... -----END PRIVATE KEY-----
-
Настройте профиль для запуска команд.
Для некоторых команд требуется указание уникального идентификатора облака и каталога. Вы можете указать информацию о них в профиле или запускать такие команды с соответствующим флагом.
-
Укажите облако в профиле:
$ yc config set cloud-id <ID облака>
Или запускайте команды с параметром
--cloud-id
. -
Укажите каталог в профиле:
$ yc config set folder-id <ID каталога>
Или запускайте команды с параметром
--folder-id
.
Все операции в этом профиле будут выполняться от имени привязанного сервисного аккаунта. Вы можете изменить параметры профиля или сменить его.
-
Аутентифицируйтесь от имени сервисного аккаунта изнутри виртуальной машины
Для сервисного аккаунта процесс аутентификации изнутри виртуальной машины упрощен:
-
Привяжите сервисный аккаунт к виртуальной машине.
-
Аутентифицируйтесь изнутри виртуальной машины:
-
Настройте профиль для запуска команд.
Для некоторых команд требуется указание уникального идентификатора облака и каталога. Вы можете указать информацию о них в профиле или запускать такие команды с соответствующим флагом.
-
Укажите облако в профиле:
$ yc config set cloud-id <ID облака>
Или запускайте команды с параметром
--cloud-id
. -
Укажите каталог в профиле:
$ yc config set folder-id <ID каталога>
Или запускайте команды с параметром
--folder-id
.
Все операции в этом профиле будут выполняться от имени привязанного сервисного аккаунта. Вы можете изменить параметры профиля или сменить его.
-
Подробная информация про работу с Yandex.Cloud из ВМ в разделе Работа с Yandex.Cloud изнутри виртуальной машины.