Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Compute Cloud
    • Все инструкции
      • Остановить и запустить ВМ
      • Сбросить пароль пользователя ВМ Windows Server
      • Подключить диск к ВМ
      • Отключить диск от ВМ
      • Перенести ВМ в другую зону доступности
      • Перенести ВМ в другой каталог
      • Перенести ВМ в другое облако
      • Добавить на ВМ дополнительный сетевой интерфейс
      • Удалить сетевой интерфейс на ВМ
      • Привязать к ВМ публичный IP-адрес
      • Отвязать от ВМ публичный IP-адрес
      • Сделать публичный IP-адрес ВМ статическим
      • Перенести публичный IP-адрес от одной ВМ на другую
      • Изменить внутренний IP-адрес ВМ
      • Изменить ВМ
      • Изменить вычислительные ресурсы ВМ
      • Изменить группы безопасности ВМ
      • Управление политикой обслуживания ВМ
      • Настроить права доступа к ВМ
      • Подключить сервисный аккаунт к ВМ
      • Удалить ВМ
    • Посмотреть операции с ресурсами сервиса
  • Yandex Container Solution
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

В этой статье:

  • Назначить роль
  • Назначить несколько ролей
  • Отозвать роль
  1. Пошаговые инструкции
  2. Управление виртуальной машиной
  3. Настроить права доступа к ВМ

Настроить права доступа к виртуальной машине

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 апреля 2025 г.
  • Назначить роль
  • Назначить несколько ролей
  • Отозвать роль

Чтобы предоставить пользователю, группе или сервисному аккаунту доступ к виртуальной машине, назначьте на нее роль.

Назначить рольНазначить роль

Консоль управления
CLI
Terraform
API
  1. В консоли управления выберите каталог, которому принадлежит ВМ.
  2. Выберите сервис Compute Cloud.
  3. Выберите нужную ВМ.
  4. Перейдите на вкладку Права доступа.
  5. Нажмите кнопку Назначить роли.
  6. В открывшемся окне выберите группу, пользователя или сервисный аккаунт, которым нужно предоставить доступ к ВМ.
  7. Нажмите кнопку Добавить роль и выберите необходимые роли.
  8. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Посмотрите описание команды CLI для назначения роли на ВМ:

    yc compute instance add-access-binding --help
    
  2. Получите список ВМ в каталоге по умолчанию:

    yc compute instance list
    

    Результат:

    +----------------------+-----------------+---------------+---------+----------------------+
    |          ID          |       NAME      |    ZONE ID    | STATUS  |     DESCRIPTION      |
    +----------------------+-----------------+---------------+---------+----------------------+
    | fhm0b28lgfp4******** | first-instance  | ru-central1-a | RUNNING | my first vm via CLI  |
    | fhm9gk85nj7g******** | second-instance | ru-central1-a | RUNNING | my second vm via CLI |
    +----------------------+-----------------+---------------+---------+----------------------+
    
  3. Посмотрите список ролей, которые уже назначены на ресурс:

    yc compute instance list-access-bindings <идентификатор_ВМ>
    
  4. Назначьте роль с помощью команды:

    • Пользователю:

      yc compute instance add-access-binding <идентификатор_ВМ> \
        --user-account-id <идентификатор_пользователя> \
        --role <роль>
      

      Где:

      • --user-account-id — идентификатор пользователя.
      • --role — назначаемая роль.
    • Сервисному аккаунту:

      yc compute instance add-access-binding <идентификатор_ВМ> \
        --service-account-id <идентификатор_сервисного_аккаунта> \
        --role <роль>
      

      Где:

      • --service-account-id — идентификатор сервисного аккаунта.
      • --role — назначаемая роль.

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

Чтобы назначить роль на ВМ с помощью Terraform:

  1. Опишите в конфигурационном файле Terraform параметры ресурсов, которые необходимо создать:

    resource "yandex_compute_instance_iam_binding" "sa-access" {
      instance_id = "<идентификатор_ВМ>"
      role        = "<роль>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>","<тип_субъекта>:<идентификатор_субъекта>"]
    }
    

    Где:

    • instance_id — идентификатор ВМ.
    • role — назначаемая роль.
    • members — список типов и идентификаторов субъектов, которым назначается роль. Указывается в виде userAccount:<идентификатор_пользователя> или serviceAccount:<идентификатор_сервисного_аккаунта>.

    Более подробную информацию о параметрах ресурса yandex_compute_instance_iam_binding см. в документации провайдера.

  2. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

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

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

    Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления и с помощью команды CLI:

    yc compute instance list-access-bindings <идентификатор_ВМ>
    

Воспользуйтесь методом REST API updateAccessBindings для ресурса Instance или вызовом gRPC API InstanceService/UpdateAccessBindings. В теле запроса в свойстве action укажите ADD, а в свойстве subject — тип и идентификатор пользователя.

Назначить несколько ролейНазначить несколько ролей

Консоль управления
CLI
Terraform
API
  1. В консоли управления выберите каталог, которому принадлежит ВМ.
  2. Выберите сервис Compute Cloud.
  3. Выберите нужную ВМ.
  4. Перейдите на вкладку Права доступа.
  5. Нажмите кнопку Назначить роли.
  6. В открывшемся окне выберите группу, пользователя или сервисный аккаунт, которым нужно предоставить доступ к ВМ.
  7. Нажмите кнопку Добавить роль и выберите необходимые роли.
  8. Добавьте еще роль через кнопку Добавить роль.
  9. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Вы можете назначить несколько ролей с помощью команды set-access-bindings.

Внимание

Команда set-access-bindings полностью перезаписывает права доступа к ресурсу. Все текущие роли на ресурс будут удалены.

  1. Убедитесь, что на ресурс не назначены роли, которые вы не хотите потерять:

    yc compute instance list-access-bindings <идентификатор_ВМ>
    
  2. Посмотрите описание команды CLI для назначения ролей на ВМ:

    yc compute instance set-access-bindings --help
    
  3. Назначьте роли:

    yc compute instance set-access-bindings <идентификатор_ВМ> \
      --access-binding role=<роль>,subject=<тип_субъекта>:<идентификатор_субъекта>
    

    Где:

    • --access-binding — назначаемая роль:

      • role — идентификатор назначаемой роли.
      • subject — тип и идентификатор субъекта, которому назначается роль.

    Например, назначьте роли нескольким пользователям и сервисному аккаунту:

    yc compute instance set-access-bindings test-vm \
      --access-binding role=editor,subject=userAccount:gfei8n54hmfh********
      --access-binding role=viewer,subject=userAccount:helj89sfj80a********
      --access-binding role=editor,subject=serviceAccount:ajel6l0jcb9s********
    

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

Чтобы назначить несколько ролей на ВМ с помощью Terraform:

  1. Опишите в конфигурационном файле Terraform параметры ресурсов, которые необходимо создать:

    resource "yandex_compute_instance_iam_binding" "role-1" {
      instance_id = "<идентификатор_ВМ>"
      role        = "<роль_1>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>"]
    }
    
    resource "yandex_compute_instance_iam_binding" "role-2" {
      instance_id = "<идентификатор_ВМ>"
      role        = "<роль_2>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>"]
    }
    

    Где:

    • instance_id — идентификатор ВМ.
    • role — назначаемая роль.
    • members — список типов и идентификаторов субъектов, которым назначается роль. Указывается в виде userAccount:<идентификатор_пользователя> или serviceAccount:<идентификатор_сервисного_аккаунта>.

    Более подробную информацию о параметрах ресурса yandex_compute_instance_iam_binding см. в документации провайдера.

  2. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

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

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

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

    yc compute instance list-access-bindings <идентификатор_ВМ>
    

Воспользуйтесь методом REST API setAccessBindings для ресурса Instance или вызовом gRPC API InstanceService/SetAccessBindings.

Отозвать рольОтозвать роль

Консоль управления
CLI
Terraform
API
  1. В консоли управления выберите каталог, которому принадлежит ВМ.
  2. Выберите сервис Compute Cloud.
  3. Выберите нужную ВМ.
  4. Перейдите на вкладку Права доступа.
  5. В строке нужного пользователя нажмите значок и выберите Изменить роли.
  6. Нажмите значок рядом с ролью, чтобы удалить ее.
  7. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Посмотрите описание команды CLI для отзыва роли на ВМ:

    yc compute instance remove-access-binding --help
    
  2. Посмотрите, кому и какие роли назначены на ресурс:

    yc compute instance list-access-bindings <идентификатор_ВМ>
    
  3. Чтобы отозвать права доступа, выполните команду:

    yc compute instance remove-access-binding <идентификатор_ВМ> \
      --role <идентификатор_роли> \
      --subject <тип_субъекта>:<идентификатор_субъекта>
    

    Где:

    • --role — идентификатор роли, которую надо отозвать.
    • --subject — субъект, у которого отзывается роль.

    Например, чтобы отозвать роль viewer у пользователя с идентификатором ajel6l0jcb9s******** на ВМ:

    yc compute instance remove-access-binding test-vm \
      --role viewer \
      --subject userAccount:ajel6l0jcb9s********
    

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

Чтобы отозвать роль, назначенную на ВМ с помощью Terraform:

  1. Откройте файл конфигурации Terraform и удалите фрагмент с описанием роли:

    resource "yandex_compute_instance_iam_binding" "sa-access" {
      instance_id = "<идентификатор_ВМ>"
      role        = "<роль>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>"]
    }
    
  2. Примените изменения:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

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

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

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

    yc compute instance list-access-bindings <идентификатор_ВМ>
    

Чтобы отозвать роли на ВМ, воспользуйтесь методом REST API updateAccessBindings для ресурса Instance или вызовом gRPC API InstanceService/UpdateAccessBindings. В теле запроса в свойстве action укажите REMOVE, а в свойстве subject — тип и идентификатор пользователя.

Была ли статья полезна?

Предыдущая
Управление политикой обслуживания ВМ
Следующая
Подключить сервисный аккаунт к ВМ
Проект Яндекса
© 2025 ООО «Яндекс.Облако»