Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Compute Cloud
    • Все инструкции
      • Создать снимок
      • Получить информацию о снимке диска
      • Удалить снимок
      • Создать расписание снимков
      • Получить информацию о расписании, по которому создаются снимки дисков
      • Изменить расписание снимков
      • Остановить и запустить расписание снимков
      • Зашифровать снимок
      • Настроить права доступа к снимку диска
      • Настроить права доступа к расписанию снимков
      • Удалить расписание снимков
    • Посмотреть операции с ресурсами сервиса
  • 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. Нажмите кнопку Добавить роль и выберите необходимые роли.
  9. Нажмите кнопку Сохранить.

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

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

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

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

    yc compute snapshot list
    

    Результат:

    +----------------------+-----------------+----------------------+--------+----------------------------+
    |          ID          |       NAME      |     PRODUCT IDS      | STATUS |        DESCRIPTION         |
    +----------------------+-----------------+----------------------+--------+----------------------------+
    | fd8rlt1u2rf0l******* | first-snapshot  | f2ecl5vhsftd******** | READY  | my first snapshot via CLI  |
    | fhmolt1u2rf0******** | second-snapshot | f2eclmol5lps******** | READY  | my second snapshot via CLI |
    +----------------------+-----------------+----------------------+--------+----------------------------+
    
  3. Посмотрите список ролей, которые уже назначены на ресурс:

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

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

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

      Где:

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

      yc compute snapshot 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_snapshot_iam_binding" "sa-access" {
      snapshot_id = "<идентификатор_снимка>"
      role        = "<роль>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>","<тип_субъекта>:<идентификатор_субъекта>"]
    }
    

    Где:

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

    Более подробную информацию о параметрах ресурса yandex_compute_snapshot_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 snapshot list-access-bindings <идентификатор_снимка>
    

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

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

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

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

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

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

Внимание

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

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

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

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

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

    Где:

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

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

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

    yc compute snapshot set-access-bindings my-snapshot \
      --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_snapshot_iam_binding" "role-1" {
      snapshot_id = "<идентификатор_снимка>"
      role        = "<роль_1>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>"]
    }
    
    resource "yandex_compute_snapshot_iam_binding" "role-2" {
      snapshot_id = "<идентификатор_снимка>"
      role        = "<роль_2>"
      members     = ["<тип_субъекта>:<идентификатор_субъекта>"]
    }
    

    Где:

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

    Более подробную информацию о параметрах ресурса yandex_compute_snapshot_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 snapshot list-access-bindings <идентификатор_снимка>
    

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

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

Консоль управления
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 snapshot remove-access-binding --help
    
  2. Посмотрите, кому и какие роли назначены на ресурс:

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

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

    Где:

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

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

    yc compute snapshot remove-access-binding my-snapshot \
      --role viewer \
      --subject userAccount:ajel6l0jcb9s********
    

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

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

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

    resource "yandex_compute_snapshot_iam_binding" "sa-access" {
      snapshot_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 snapshot list-access-bindings <идентификатор_снимка>
    

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

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

Предыдущая
Зашифровать снимок
Следующая
Настроить права доступа к расписанию снимков
Проект Яндекса
© 2025 ООО «Яндекс.Облако»