Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Начало работы в Yandex Cloud
    • Шаг 1. Регистрация
    • Шаг 2. Оплата
    • Шаг 3. Создание организации
    • Шаг 4. Выбор тарифного плана
    • Шаг 5. Управление пользователями
    • Шаг 6. Иерархия ресурсов
    • Шаг 7. Настройка безопасной сетевой конфигурации
    • Шаг 8. Логирование
  • Стартовый грант

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

  • Создайте каталог
  • Измените каталог
  • Назначьте роли на каталог
  • Назначьте несколько ролей
  • Дайте доступ к каталогу для сервисного аккаунта
  1. Юридическим лицам
  2. Шаг 6. Иерархия ресурсов

Настройте облако

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

При регистрации в Yandex Cloud для пользователя будет создано облако — отдельное рабочее пространство, для которого этот пользователь будет назначен владельцем. В облаке будет создан каталог default и сеть default.

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

Создайте каталогСоздайте каталог

Консоль управления
CLI
API
  1. В консоли управления в списке слева выберите нужное облако.

  2. Справа сверху нажмите кнопку Создать каталог.

  3. Введите имя каталога. Требования к имени:

    • длина — от 2 до 63 символов;
    • может содержать строчные буквы латинского алфавита, цифры и дефисы;
    • первый символ — буква, последний — не дефис.
  4. (Опционально) Введите описание каталога.

  5. Выберите опцию Создать сеть по умолчанию. Будет создана сеть с подсетями в каждой зоне доступности. Также в этой сети будет создана группа безопасности по умолчанию, внутри которой весь сетевой трафик разрешен.

  6. Нажмите кнопку Создать.

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

    yc resource-manager folder create --help
    
  2. Создайте новый каталог:

    • с именем и без описания:

      yc resource-manager folder create \
          --name new-folder
      

      Требования к имени каталога:

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    • с именем и описанием:

      yc resource-manager folder create \
          --name new-folder \
          --description "my first folder with description"
      

Чтобы создать каталог, воспользуйтесь методом create для ресурса Folder.

Измените каталогИзмените каталог

Через консоль управления можно изменить только имя каталога. Чтобы изменить его описание, используйте CLI или API.

Консоль управления
CLI
API
  1. Выберите каталог на стартовой странице консоли управления. На этой странице отображаются каталоги для выбранного облака. Если необходимо, переключитесь на другое облако.
  2. Нажмите значок напротив каталога и выберите Редактировать.
  3. Введите новое имя каталога.
  4. Нажмите кнопку Сохранить.
  1. Посмотрите описание команды изменения каталога:

    yc resource-manager folder update --help
    
  2. Если вы знаете идентификатор или имя каталога, переходите к следующему шагу. Если нет, то узнайте это одним из способов:

    • Получите список каталогов:

      $ yc resource-manager folder list
      +----------------------+--------------------+--------+--------+-------------+
      |          ID          |        NAME        | LABELS | STATUS | DESCRIPTION |
      +----------------------+--------------------+--------+--------+-------------+
      | b1gppulhhm2aaufq9eug | yet-another-folder |        | ACTIVE |             |
      | b1gvmob95yysaplct532 | default            |        | ACTIVE |             |
      +----------------------+--------------------+--------+--------+-------------+
      
    • Если вы знаете идентификатор ресурса, который принадлежит нужному каталогу, получите идентификатор каталога из информации об этом ресурсе:

      yc <SERVICE-NAME> <RESOURCE> get <RESOURCE-ID>
      

      где:

      • <SERVICE-NAME> — имя сервиса, например compute.
      • <RESOURCE> — категория ресурса, например instance.
      • <RESOURCE-ID> — идентификатор ресурса.

      Например, виртуальная машина fhmp74bfis2aim728p2a принадлежит каталогу b1gpvjd9ir42nsng55ck:

      yc compute instance get fhmp74bfis2ais728p2a
      id: fhmp74bfis2ais728p2a
      folder_id: b1gpvjd9ia42nsng55ck
      ...
      
  3. Измените параметры каталога, например имя и описание. Вы можете указать изменяемый каталог по имени или идентификатору.

    yc resource-manager folder update default \
        --new-name myfolder \
        --description "this is my default-folder"
    

    Команда переименует каталог default в myfolder и обновит его описание.

    Требования к имени каталога:

    • длина — от 2 до 63 символов;
    • может содержать строчные буквы латинского алфавита, цифры и дефисы;
    • первый символ — буква, последний — не дефис.

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

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

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

    yc resource-manager folder add-access-binding --help
    
  2. Выберите каталог, например my-folder:

    yc resource-manager folder list
    +----------------------+-----------+--------+--------+
    |          ID          |   NAME    | LABELS | STATUS |
    +----------------------+-----------+--------+--------+
    | b1gd129pp9ha0vnvf5g7 | my-folder |        | ACTIVE |
    +----------------------+-----------+--------+--------+
    
  3. Выберите роль:

    yc iam role list
    +--------------------------------+-------------+
    |               ID               | DESCRIPTION |
    +--------------------------------+-------------+
    | admin                          |             |
    | compute.images.user            |             |
    | editor                         |             |
    | ...                            |             |
    +--------------------------------+-------------+
    
  4. Узнайте ID пользователя по логину или адресу электронной почты. Чтобы назначить роль не пользователю, а сервисному аккаунту или группе пользователей, воспользуйтесь примерами ниже.

    yc iam user-account get test-user
    id: gfei8n54hmfhuk5nogse
    yandex_passport_user_account:
        login: test-user
        default_email: test-user@yandex.ru
    
  5. Назначьте пользователю test-user роль editor на каталог my-folder. В субъекте укажите тип userAccount и ID пользователя:

    yc resource-manager folder add-access-binding my-folder \
        --role editor \
        --subject userAccount:gfei8n54hmfhuk5nogse
    

Воспользуйтесь методом updateAccessBindings для ресурса Folder. Вам понадобится ID каталога и ID пользователя, которому назначается роль на каталог.

  1. Узнайте ID каталога с помощью метода list:

    curl \
      --header "Authorization: Bearer <IAM-TOKEN>" \
      https://resource-manager.api.cloud.yandex.net/resource-manager/v1/folders?cloudId=b1gg8sgd16g7qca5onqs
    
    {
     "folders": [
      {
       "id": "b1g66mft1vopnevbn57j",
       "cloudId": "b1gd129pp9ha0vnvf5g7",
       "createdAt": "2018-10-17T12:44:31Z",
       "name": "my-folder",
       "status": "ACTIVE"
      }
     ]
    }
    
  2. Узнайте ID пользователя по логину с помощью метода getByLogin:

    curl \
        --header "Authorization: Bearer <IAM-TOKEN>" \
        https://iam.api.cloud.yandex.net/iam/v1/yandexPassportUserAccounts:byLogin?login=test-user
    
    {
     "id": "gfei8n54hmfhuk5nogse",
     "yandexPassportUserAccount": {
      "login": "test-user",
      "defaultEmail": "test-user@yandex.ru"
     }
    }
    
  3. Назначьте пользователю роль editor на каталог my-folder. В свойстве action укажите ADD, а в свойстве subject - тип userAccount и ID пользователя:

    curl \
        --request POST \
        --header 'Content-Type: application/json' \
        --header "Authorization: Bearer <IAM-TOKEN>" \
        --data '{
        "accessBindingDeltas": [{
            "action": "ADD",
            "accessBinding": {
                "roleId": "editor",
                "subject": {
                    "id": "gfei8n54hmfhuk5nogse",
                    "type": "userAccount"
        }}}]}' \
        https://resource-manager.api.cloud.yandex.net/resource-manager/v1/folders/b1gd129pp9ha0vnvf5g7:updateAccessBindings
    

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

Консоль управления
CLI
API

Назначьте пользователю несколько ролей по инструкции выше.

Команда add-access-binding позволяет добавить только одну роль. Вы можете назначить несколько ролей с помощью команды set-access-binding.

Внимание

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

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

    yc resource-manager folder list-access-binding my-folder
    
  2. Например, назначьте роль нескольким пользователям:

    yc resource-manager folder set-access-bindings my-folder \
        --access-binding role=editor,subject=userAccount:gfei8n54hmfhuk5nogse
        --access-binding role=viewer,subject=userAccount:helj89sfj80aj24nugsz
    

Назначьте одному пользователю роль editor, а другому viewer:

curl \
    --request POST \
    --header 'Content-Type: application/json' \
    --header "Authorization: Bearer <IAM-TOKEN>" \
    --data '{
    "accessBindingDeltas": [{
        "action": "ADD",
        "accessBinding": {
            "roleId": "editor",
            "subject": {
                "id": "gfei8n54hmfhuk5nogse",
                "type": "userAccount"
            }
        }
    },{
        "action": "ADD",
        "accessBinding": {
            "roleId": "viewer",
            "subject": {
                "id": "helj89sfj80aj24nugsz",
                "type": "userAccount"
    }}}]}' \
    https://resource-manager.api.cloud.yandex.net/resource-manager/v1/folders/b1gd129pp9ha0vnvf5g7:updateAccessBindings

Вы также можете назначать роли с помощью метода setAccessBindings.

Внимание

Метод setAccessBindings полностью перезаписывает права доступа к ресурсу! Все текущие роли на ресурс будут удалены.

curl \
    --request POST \
    --header 'Content-Type: application/json' \
    --header "Authorization: Bearer <IAM-TOKEN>" \
    --data '{
    "accessBindings": [{
        "roleId": "editor",
        "subject": { "id": "ajei8n54hmfhuk5nog0g", "type": "userAccount" }
    },{
        "roleId": "viewer",
        "subject": { "id": "helj89sfj80aj24nugsz", "type": "userAccount" }
    }]}' \
    https://resource-manager.api.cloud.yandex.net/resource-manager/v1/folders/b1gd129pp9ha0vnvf5g7:setAccessBindings

Дайте доступ к каталогу для сервисного аккаунтаДайте доступ к каталогу для сервисного аккаунта

Вы можете назначить роль не только на каталог, но и на его дочерние ресурсы. Они перечислены в разделе Список ресурсов, на которые можно назначать роли.

Разрешите сервисному аккаунту управлять каталогом и ресурсами в нем:

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

  2. Узнайте идентификатор сервисного аккаунта по его имени:

    yc iam service-account get my-robot
    

    Результат:

    id: aje6o61dvog2********
    folder_id: b1gvmob95yys********
    created_at: "2018-10-15T18:01:25Z"
    name: my-robot
    

    Если вы не знаете имя сервисного аккаунта, получите список сервисных аккаунтов с их идентификаторами:

    yc iam service-account list
    

    Результат:

    +----------------------+------------------+-----------------+
    |          ID          |       NAME       |   DESCRIPTION   |
    +----------------------+------------------+-----------------+
    | aje6o61dvog2******** | my-robot         | my description  |
    +----------------------+------------------+-----------------+
    
  3. Назначьте роль viewer сервисному аккаунту my-robot, используя его идентификатор:

    yc resource-manager folder add-access-binding my-folder \
      --role viewer \
      --subject serviceAccount:aje6o61dvog2********
    

Чтобы назначить сервисному аккаунту роль на облако или каталог, воспользуйтесь методом REST API updateAccessBindings для ресурса Cloud или Folder:

  1. Выберите роль, которую хотите назначить сервисному аккаунту. Описание ролей можно найти в документации Yandex Identity and Access Management в справочнике ролей Yandex Cloud.

  2. Узнайте ID каталога с сервисными аккаунтами.

  3. Получите IAM-токен для авторизации в API Yandex Cloud.

  4. Получите список сервисных аккаунтов в каталоге, чтобы узнать их идентификаторы:

    export FOLDER_ID=b1gvmob95yys********
    export IAM_TOKEN=CggaATEVAgA...
    curl \
      --header "Authorization: Bearer ${IAM_TOKEN}" \
      "https://iam.api.cloud.yandex.net/iam/v1/serviceAccounts?folderId=${FOLDER_ID}"
    

    Результат:

    {
     "serviceAccounts": [
      {
       "id": "ajebqtreob2d********",
       "folderId": "b1gvmob95yys********",
       "createdAt": "2018-10-18T13:42:40Z",
       "name": "my-robot",
       "description": "my description"
      }
     ]
    }
    
  5. Сформируйте тело запроса, например в файле body.json. В свойстве action укажите ADD, в свойстве roleId — нужную роль, например editor, а в свойстве subject — тип serviceAccount и идентификатор сервисного аккаунта:

    body.json:

    {
      "accessBindingDeltas": [{
        "action": "ADD",
        "accessBinding": {
          "roleId": "editor",
          "subject": {
            "id": "ajebqtreob2d********",
            "type": "serviceAccount"
          }
        }
      }]
    }
    
  6. Назначьте роль сервисному аккаунту. Например, на каталог с идентификатором b1gvmob95yys********:

    export FOLDER_ID=b1gvmob95yys********
    export IAM_TOKEN=CggaAT********
    curl \
      --request POST \
      --header "Content-Type: application/json" \
      --header "Authorization: Bearer ${IAM_TOKEN}" \
      --data '@body.json' \
      "https://resource-manager.api.cloud.yandex.net/resource-manager/v1/folders/${FOLDER_ID}:updateAccessBindings"
    

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

Предыдущая
Шаг 5. Управление пользователями
Следующая
Шаг 7. Настройка безопасной сетевой конфигурации
Проект Яндекса
© 2025 ООО «Яндекс.Облако»