Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Router
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Managed Service for YDB
    • SpeechKit
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • Container Registry
    • Managed Service for Prometheus®
    • Message Queue
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Cloud Apps
    • Yandex AI Studio
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Yandex Cloud Video
    • Stackland
    • Yandex StoreDoc
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • DataSphere
    • Vision OCR
    • Translate
    • Cloud Registry
    • SmartCaptcha
    • Cloud Desktop
    • SourceCraft Code Assistant
    • Managed Service for GitLab
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Serverless Integrations
    • IoT Core
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Identity and Access Management
KZ
    • Все инструкции
    • Обработка секретов, попавших в открытый доступ
    • Пользователи
    • Группы пользователей
      • Создание сервисного аккаунта
      • Просмотр сервисных аккаунтов каталога
      • Изменение сервисного аккаунта
      • Назначение роли сервисному аккаунту
      • Настройка прав доступа к сервисному аккаунту
      • Использование имперсонации
      • Получение информации о сервисном аккаунте
      • Получение ID-токена сервисного аккаунта
      • Удаление сервисного аккаунта
  • Безопасное использование Yandex Cloud
  • Управление доступом
  • Правила тарификации
  • Справочник ролей
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

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

  • Назначение роли на ресурс
  • Назначение роли на организацию
  1. Пошаговые инструкции
  2. Сервисные аккаунты
  3. Назначение роли сервисному аккаунту

Назначение роли сервисному аккаунту

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 17 июля 2026 г.
Открыть в Markdown
  • Назначение роли на ресурс
  • Назначение роли на организацию

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

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

Назначение роли на ресурсНазначение роли на ресурс

Права доступа наследуются от родительского ресурса к дочерним. Например, если сервисному аккаунту назначить роль на облако, этот сервисный аккаунт получит нужные разрешения на все ресурсы во всех каталогах этого облака.

Чтобы назначить роль на ресурс, нужна роль admin или service-name.admin, где service-name— название сервиса, на ресурс которого назначается роль.

Узнайте, на какие ресурсы можно назначать роли.

Чтобы назначить роль на ресурс:

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

Роли сервисному аккаунту назначаются так же, как пользовательскому аккаунту.

Чтобы назначить сервисному аккаунту роль на облако или каталог:

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

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

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

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

yc resource-manager <категория_ресурса> add-access-binding <имя_или_идентификатор_ресурса> \
  --role <идентификатор_роли> \
  --service-account-id <идентификатор_сервисного_аккаунта>

Где:

  • <категория_ресурса> — cloud, чтобы назначить роль на облако, или folder, чтобы назначить роль на каталог.
  • <имя_или_идентификатор_ресурса> — имя или идентификатор ресурса, на который назначается роль.
  • --role — идентификатор роли, например viewer.
  • --service-account-id — идентификатор сервисного аккаунта, которому назначается роль.

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

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

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

    yc iam service-account get <имя_сервисного_аккаунта>
    

    Результат:

    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. Назначьте роль сервисному аккаунту, используя его идентификатор:

    yc resource-manager folder add-access-binding <имя_или_идентификатор_каталога> \
      --role <роль> \
      --service-account-id <идентификатор_сервисного_аккаунта>
    

    Где:

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

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

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

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

    Пример структуры конфигурационного файла для назначения роли на каталог:

    resource "yandex_resourcemanager_folder_iam_member" "admin-account-iam" {
      folder_id   = "<идентификатор_каталога>"
      role        = "<роль>"
      member      = "serviceAccount:<идентификатор_сервисного_аккаунта>"
    }
    

    Где:

    • folder_id — идентификатор каталога. Обязательный параметр.

    • role — назначаемая роль. Описание ролей можно найти в документации Yandex Identity and Access Management в справочнике ролей Yandex Cloud. Обязательный параметр.

    • member — обозначение субъекта, которому назначается роль. Для сервисного аккаунта укажите serviceAccount:<идентификатор_сервисного_аккаунта>.

      Обозначения субъектов

      Для обозначения субъекта используется комбинация типа и уникального идентификатора — <тип_субъекта>:<идентификатор>. Возможные обозначения субъектов:

      Тип субъекта

      Обозначение субъекта

      userAccount

      userAccount:<идентификатор_пользователя>

      serviceAccount

      serviceAccount:<идентификатор_сервисного_аккаунта>

      federatedUser

      federatedUser:<идентификатор_пользователя>

      group

      group:<идентификатор_группы>

      system

      system:allAuthenticatedUsers

      (группа All authenticated users)

      system:allUsers

      (группа All users)

      system:group:organization:<идентификатор_организации>:users

      (группа All users in organization X)

      system:group:federation:<идентификатор_федерации>:users

      (группа All users in federation N)

      system:group:userpool:<идентификатор_пула>:users

      (группа All users in userpool P)

    Подробнее о ресурсах, которые вы можете создать с помощью Terraform, читайте в документации провайдера.

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

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

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

      terraform validate
      

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

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

      terraform plan
      

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

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

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

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

    yc resource-manager folder list-access-bindings <имя_или_идентификатор_каталога>
    

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

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

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

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

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

    export FOLDER_ID=<идентификатор_каталога>
    export IAM_TOKEN=<IAM-токен>
    curl \
      --header "Authorization: Bearer ${IAM_TOKEN}" \
      "https://iam.api.yandexcloud.kz/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:

    {
      "accessBindingDeltas": [{
        "action": "ADD",
        "accessBinding": {
          "roleId": "<роль>",
          "subject": {
            "id": "<идентификатор_сервисного_аккаунта>",
            "type": "serviceAccount"
          }
        }
      }]
    }
    

    Где:

    • roleId — назначаемая роль.

    • subject — субъект, которому назначается роль.

      Обозначения субъектов

      Для обозначения субъекта используется комбинация типа и уникального идентификатора в полях запроса subject.type и subject.id. Возможные комбинации:

      subject.type

      subject.id

      userAccount

      <идентификатор_пользователя>

      serviceAccount

      <идентификатор_сервисного_аккаунта>

      federatedUser

      <идентификатор_пользователя>

      group

      <идентификатор_группы>

      system

      allAuthenticatedUsers

      (группа All authenticated users)

      allUsers

      (группа All users)

      group:organization:<идентификатор_организации>:users

      (группа All users in organization X)

      group:federation:<идентификатор_федерации>:users

      (группа All users in federation N)

      group:userpool:<идентификатор_пула>:users

      (группа All users in userpool P)

  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.yandexcloud.kz/resource-manager/v1/folders/${FOLDER_ID}:updateAccessBindings"
    

Назначение роли на организациюНазначение роли на организацию

Права доступа наследуются от организации ко всем созданным в ней ресурсам. Например, если сервисному аккаунту назначить роль на организацию, этот сервисный аккаунт получит нужные разрешения на все ресурсы всех облаков этой организации.

Чтобы предоставить сервисному аккаунту права доступа к организации, необходима роль не ниже organization-manager.admin.

Интерфейс Cloud Center
CLI
Terraform
API
  1. Войдите в сервис Yandex Identity Hub с учетной записью администратора или владельца организации.

  2. На панели слева выберите Права доступа.

  3. В фильтре Тип аккаунта выберите Сервисные аккаунты.

  4. Если у нужного сервисного аккаунта уже есть хотя бы одна роль, в строке с этим аккаунтом нажмите значок и выберите Назначить роли.

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

  5. Нажмите кнопку Добавить роль и выберите роль, которую хотите назначить сервисному аккаунту. Вы можете назначить несколько ролей.

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

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

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

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

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

yc organization-manager organization add-access-binding <имя_или_идентификатор_организации> \
  --role <идентификатор_роли> \
  --service-account-id <идентификатор_сервисного_аккаунта>

Где:

  • <имя_или_идентификатор_организации> — техническое название или идентификатор организации.
  • --role — идентификатор роли, например viewer.
  • --service-account-id — идентификатор сервисного аккаунта, которому назначается роль.

Например, чтобы назначить сервисному аккаунту роль viewer на организацию MyOrg:

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

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

    yc organization-manager organization list
    

    Результат:

    +---------------------------------+---------------------------------+----------------------+
    |               ID                |              NAME               |        TITLE         |
    +---------------------------------+---------------------------------+----------------------+
    | bpf1smsil5q0********            | hdt5j5uw********                | MyOrg                |
    +---------------------------------+---------------------------------+----------------------+
    

    Техническое название организации находится в столбце NAME, идентификатор организации — в столбце ID.

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

    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  |
    +----------------------+------------------+-----------------+
    
  4. Назначьте сервисному аккаунту my-robot роль viewer на организацию с идентификатором bpf1smsil5q0********:

    yc organization-manager organization add-access-binding bpf1smsil5q0******** \
      --role viewer \
      --service-account-id aje6o61dvog2********
    

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

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

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

    Пример структуры конфигурационного файла:

    resource "yandex_organizationmanager_organization_iam_binding" "editor" {
      organization_id   = "<идентификатор_организации>"
      role              = "<роль>"
      members           = ["serviceAccount:<идентификатор_сервисного_аккаунта>",]
    }
    

    Где:

    • organization_id — идентификатор организации. Обязательный параметр.
    • role — назначаемая роль. Описание ролей можно найти в документации Yandex Identity and Access Management в справочнике ролей Yandex Cloud. Для каждой роли можно использовать только один ресурс yandex_organizationmanager_organization_iam_binding. Обязательный параметр.
    • members — обозначения субъектов, которым назначается роль. Обязательный параметр.

    Подробнее о параметрах ресурса yandex_organizationmanager_organization_iam_binding читайте в документации провайдера.

  2. Проверьте корректность настроек.

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

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  3. Назначьте роль.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

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

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

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

    yc organization-manager organization list-access-bindings <имя_или_идентификатор_организации>
    

Чтобы назначить сервисному аккаунту роль на организацию, воспользуйтесь методом REST API updateAccessBindings для ресурса Organization или вызовом gRPC API OrganizationService/UpdateAccessBindings:

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

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

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

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

    export FOLDER_ID=<идентификатор_каталога>
    export IAM_TOKEN=<IAM-токен>
    curl \
      --header "Authorization: Bearer ${IAM_TOKEN}" \
      "https://iam.api.yandexcloud.kz/iam/v1/serviceAccounts?folderId=${FOLDER_ID}"
    

    Результат:

    {
     "serviceAccounts": [
      {
       "id": "ajebqtreob2d********",
       "folderId": "b1gvmob95yys********",
       "createdAt": "2018-10-18T13:42:40Z",
       "name": "my-robot",
       "description": "my description"
      }
     ]
    }
    
  5. Получите список организаций, чтобы узнать их идентификаторы:

    export IAM_TOKEN=<IAM-токен>
    curl \
      --header "Authorization: Bearer ${IAM_TOKEN}" \
      --request GET \
      "https://organization-manager.api.yandexcloud.kz/organization-manager/v1/organizations"
    

    Результат:

    {
     "organizations": [
      {
       "id": "bpfaidqca8vd********",
       "createdAt": "2023-04-07T08:11:54.313033Z",
       "name": "xvdq9q22********",
       "title": "MyOrg"
      }
     ]
    }
    
  6. Сформируйте тело запроса, например в файле body.json. В свойстве action укажите ADD:

    body.json:

    {
      "accessBindingDeltas": [{
        "action": "ADD",
        "accessBinding": {
          "roleId": "<роль>",
          "subject": {
            "id": "<идентификатор_сервисного_аккаунта>",
            "type": "serviceAccount"
          }
        }
      }]
    }
    

    Где:

    • roleId — назначаемая роль.

    • subject — субъект, которому назначается роль.

      Обозначения субъектов

      Для обозначения субъекта используется комбинация типа и уникального идентификатора в полях запроса subject.type и subject.id. Возможные комбинации:

      subject.type

      subject.id

      userAccount

      <идентификатор_пользователя>

      serviceAccount

      <идентификатор_сервисного_аккаунта>

      federatedUser

      <идентификатор_пользователя>

      group

      <идентификатор_группы>

      system

      allAuthenticatedUsers

      (группа All authenticated users)

      allUsers

      (группа All users)

      group:organization:<идентификатор_организации>:users

      (группа All users in organization X)

      group:federation:<идентификатор_федерации>:users

      (группа All users in federation N)

      group:userpool:<идентификатор_пула>:users

      (группа All users in userpool P)

  7. Назначьте роль сервисному аккаунту:

    export ORGANIZATION_ID=<идентификатор_организации>
    export IAM_TOKEN=<IAM_токен>
    curl \
      --header "Content-Type: application/json" \
      --header "Authorization: Bearer ${IAM_TOKEN}" \
      --data '@body.json' \
      --request POST \
      "https://organization-manager.api.yandexcloud.kz/organization-manager/v1/organizations/${ORGANIZATION_ID}:updateAccessBindings"
    

Что дальшеЧто дальше

  • Создать статический ключ доступа.
  • Настройка прав доступа к сервисному аккаунту.
  • Назначить несколько ролей сразу.

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

Предыдущая
Изменение сервисного аккаунта
Следующая
Настройка прав доступа к сервисному аккаунту
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»