[Документация Yandex Cloud](../../../index.md) > [Yandex Identity Hub](../../index.md) > [Практические руководства](../index.md) > [Управление федерациями удостоверений](index.md) > Аутентификация с помощью Microsoft Entra ID

# Аутентификация с помощью Microsoft Entra ID

С помощью [федерации удостоверений](../../concepts/add-federation.md) вы можете использовать [Microsoft Entra ID](https://azure.microsoft.com/ru-ru/services/active-directory/) (далее — Entra ID) для аутентификации пользователей в организации.

Настройка аутентификации состоит из следующих этапов:

1. [Создание и настройка SAML-приложения в Azure](#azure-settings).

1. [Создание и настройка федерации в Yandex Identity Hub](#yc-settings).

1. [Настройка системы единого входа (SSO)](#sso-settings).

1. [Проверка аутентификации](#test-auth).

## Перед началом работы {#before-you-begin}

Чтобы воспользоваться инструкциями в этом разделе, вам понадобится учетная запись Azure с активной подпиской.

## Создание и настройка SAML-приложения в Azure {#azure-settings}

### Создайте SAML-приложение и скачайте сертификат {#create-app}

В роли поставщика удостоверений (IdP) выступает SAML-приложение в Microsoft Azure. Начните создавать приложение и скачайте сертификат:

1. Перейдите на [портал Azure](https://portal.azure.com/).

1. В разделе **Службы Azure** выберите **Microsoft Entra ID**.

1. На панели слева выберите **Корпоративные приложения**.

1. Нажмите **Новое приложение**.

1. На странице **Обзор коллекции Microsoft Entra** нажмите **Создайте собственное приложение**.

1. В открывшемся окне:

   1. Введите название приложения.

   1. Выберите вариант **Integrate any other application you don't find in the gallery (Non-gallery)**.

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

1. На открывшейся странице **Обзор** на панели слева выберите **Единый вход**.

1. Выберите метод единого входа **SAML**.

1. На странице **Вход на основе SAML** в разделе **3. Сертификат подписи SAML** скачайте сертификат (Base64). С помощью него поставщик удостоверений подписывает сообщение о том, что пользователь прошел аутентификацию.

Не закрывайте страницу: данные IdP-сервера понадобятся при [создании и настройке федерации](#yc-settings).

### Добавьте пользователей {#add-users}

Добавьте пользователей на IdP-сервер:

1. Перейдите на страницу [Корпоративные приложения](https://portal.azure.com/#blade/Microsoft_AAD_IAM/StartboardApplicationsMenuBlade/AllApps).

1. Выберите созданное SAML-приложение.

1. На панели слева выберите **Пользователи и группы**.

1. Нажмите **Добавить пользователя или группу**.

1. В поле **Пользователи** нажмите **Не выбрано**.

1. В открывшемся окне отметьте пользователей и нажмите кнопку **Выбрать**.

1. Нажмите кнопку **Назначить**.

## Создание и настройка федерации в Yandex Identity Hub {#yc-settings}

### Создайте федерацию {#create-federation}

{% list tabs group=instructions %}

- Интерфейс Cloud Center {#cloud-center}

  1. Перейдите в сервис [Yandex Identity Hub](https://kz.center.yandex.cloud/organization).

  1. На панели слева выберите ![icon-federation](../../../_assets/console-icons/vector-square.svg) **Федерации**.

  1. В правом верхнем углу страницы нажмите кнопку ![Circles3Plus](../../../_assets/console-icons/circles-3-plus.svg) **Создать федерацию**. В открывшемся окне:

      1. Задайте имя федерации. Имя должно быть уникальным в каталоге.

      1. При необходимости добавьте описание.

      1. В поле **Время жизни cookie** укажите время, в течение которого браузер не будет требовать у пользователя повторной аутентификации.

      1. В поле **IdP Issuer** вставьте ссылку, которая указана в поле **Идентификатор Microsoft Entra** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

          ```text
          https://sts.windows.net/<идентификатор_SAML-приложения>/
          ```

      1. В поле **Ссылка на страницу для входа в IdP** вставьте ссылку, которая указана в поле **URL-адрес входа** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

          ```text
          https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2
          ```

          В ссылке допустимо использовать только протоколы HTTP и HTTPS.

      1. Включите опцию **Автоматически создавать пользователей**, чтобы пользователь после аутентификации автоматически добавлялся в организацию. Если опция отключена, федеративных пользователей потребуется [добавить вручную](../../operations/add-account.md#add-user-sso).

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

      1. Включите опцию **Принудительная повторная аутентификация (ForceAuthn) в IdP**, чтобы задать значение `true` для параметра [ForceAuthn](../../saml/api-ref/Federation/index.md) в запросе аутентификации SAML. При включении этой опции поставщик удостоверений (Identity Provider, IdP) запрашивает у пользователя аутентификацию по истечении сессии в Yandex Cloud. Необязательный параметр.

      1. Нажмите кнопку **Создать федерацию**.

- CLI {#cli}

    Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), [установите и инициализируйте его](../../../cli/quickstart.md#install).

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

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

        ```bash
        yc organization-manager federation saml create --help
        ```

    1. Создайте федерацию:

        ```bash
        yc organization-manager federation saml create --name my-federation \
          --organization-id <идентификатор_организации> \
          --auto-create-account-on-login \
          --cookie-max-age 12h \
          --issuer "https://sts.windows.net/<идентификатор_SAML-приложения>/" \
          --sso-url "https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2" \
          --sso-binding POST \
          --force-authn
        ```

        Где:

        * `--name` — имя федерации. Имя должно быть уникальным в каталоге.

        * `--organization-id` — [идентификатор](../../operations/organization-get-id.md) организации.

        * `--auto-create-account-on-login` — флаг, который активирует автоматическое создание новых пользователей в облаке после аутентификации на IdP-сервере. 
        Опция упрощает процесс заведения пользователей, но созданный таким образом пользователь не сможет выполнять никаких операций с ресурсами в облаке. Исключение — те ресурсы, на которые назначены роли [публичной группе](../../../iam/concepts/access-control/public-group.md) `All users` или `All authenticated users`.

            Если опцию не включать, то пользователь, которого не добавили в организацию, не сможет войти в консоль управления, даже если пройдет аутентификацию на вашем IdP-сервере. В этом случае вы можете управлять списком пользователей, которым разрешено пользоваться ресурсами Yandex Cloud.

        * `--cookie-max-age` — время, в течение которого браузер не должен требовать у пользователя повторной аутентификации.

        * `--issuer` — идентификатор IdP-сервера, на котором должна происходить аутентификация.

            Используйте ссылку, которая указана в поле **Идентификатор Microsoft Entra** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:
            ```text
            https://sts.windows.net/<идентификатор_SAML-приложения>/
            ```

        * `--sso-url` — URL-адрес страницы, на которую браузер должен перенаправить пользователя для аутентификации.

            Используйте ссылку, которая указана в поле **URL-адрес входа** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

            ```text
            https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2
            ```

            В ссылке допустимо использовать только протоколы HTTP и HTTPS.

        * `--sso-binding` — укажите тип привязки для Single Sign-on. Большинство поставщиков поддерживают тип привязки `POST`.

        * `--force-authn` — по истечении сессии в Yandex Cloud поставщик удостоверений запросит у пользователя повторную аутентификацию. Необязательный параметр.

- Terraform {#tf}

  Если у вас еще нет Terraform, [установите его и настройте провайдер Yandex Cloud](../../../tutorials/infrastructure-management/terraform-quickstart.md#install-terraform).
  
  
  Чтобы управлять инфраструктурой с помощью Terraform от имени сервисного аккаунта или пользовательских аккаунтов: аккаунта на Яндексе, федеративного аккаунта и локального пользователя, [аутентифицируйтесь](../../../terraform/authentication.md) соответствующим способом.

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

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

      ```hcl
      resource "yandex_organizationmanager_saml_federation" federation {
        name            = "my-federation"
        organization_id = "<идентификатор_организации>"
        auto_create_account_on_login = "true"
        issuer          = "https://sts.windows.net/<идентификатор_SAML-приложения>/"
        sso_url         = "https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2"
        sso_binding     = "POST"
        security_settings {
          encrypted_assertions = "true"
          force_authn          = "true"
        }
      }
      ```

      Где:

      * `name` — имя федерации. Имя должно быть уникальным в каталоге.
      * `description` — описание федерации.
      * `organization_id` — [идентификатор](../../operations/organization-get-id.md) организации.
      * `labels` — набор пар меток ключ/значение, которые присвоены федерации. Необязательный параметр.
      * `issuer` — идентификатор IdP-сервера, на котором должна происходить аутентификация.

          Используйте ссылку, которая указана в поле **Идентификатор Microsoft Entra** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

          ```text
          https://sts.windows.net/<идентификатор_SAML-приложения>/
          ```

      * `sso_binding` — укажите тип привязки для Single Sign-on. Большинство поставщиков поддерживают тип привязки `POST`.
      * `sso_url` — URL-адрес страницы, на которую браузер должен перенаправить пользователя для аутентификации.

          Используйте ссылку, которая указана в поле **URL-адрес входа** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

          ```text
          https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2
          ```

          В ссылке допустимо использовать только протоколы HTTP и HTTPS.

      * `cookie_max_age` — время в секундах, в течение которого браузер не должен требовать у пользователя повторной аутентификации. Значение по умолчанию `8 часов`.
      * `auto_create_account_on_login` — флаг, который активирует автоматическое создание новых пользователей в облаке после аутентификации на IdP-сервере.
      Опция упрощает процесс заведения пользователей, но созданный таким образом пользователь не сможет выполнять никаких операций с ресурсами в облаке. Исключение — те ресурсы, на которые назначены роли [публичной группе](../../../iam/concepts/access-control/public-group.md) `All users` или `All authenticated users`.

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

      * `case_insensitive_name_ids` — зависимость имен пользователей от регистра.
          Если опция включена, идентификаторы имен федеративных пользователей будут нечувствительны к регистру.

      * `security_settings` — настройки безопасности федерации: 

          * `encrypted_assertions` — подписывать запросы аутентификации.
            
            Если включить эту опцию, то все запросы аутентификации от Yandex Cloud будут содержать цифровую подпись.

          * `force-authn` — по истечении сессии в Yandex Cloud поставщик удостоверений запросит у пользователя повторную аутентификацию. Необязательный параметр.

      Подробнее о параметрах ресурса `yandex_organizationmanager_saml_federation` читайте в [документации провайдера](../../../terraform/resources/organizationmanager_saml_federation.md).

  1. Проверьте корректность конфигурационных файлов.

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

          ```bash
          terraform plan
          ```

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

  1. Создайте федерацию.

      1. Если в конфигурации нет ошибок, выполните команду:

          ```bash
          terraform apply
          ```

      1. Подтвердите создание федерации.

      После этого в указанной организации будет создана федерация. Проверить появление федерации и ее настроек можно в организации в разделе [Федерации](https://org.yandex.cloud/federations).

- API {#api}

    1. Создайте файл с телом запроса, например `body.json`:

        ```json
        {
          "name": "my-federation",
          "organizationId": "<идентификатор_организации>",
          "autoCreateAccountOnLogin": true,
          "cookieMaxAge":"43200s",
          "issuer": "https://sts.windows.net/<идентификатор_SAML-приложения>/",
          "ssoUrl": "https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2",
          "ssoBinding": "POST",
          "securitySettings": {
            "forceAuthn": true
          }
        }
        ```

        Где:

        * `name` — имя федерации. Имя должно быть уникальным в каталоге.

        * `organizationId` — [идентификатор](../../operations/organization-get-id.md) организации.

        * `autoCreateAccountOnLogin` — флаг, который активирует автоматическое создание новых пользователей в облаке после аутентификации на IdP-сервере. 
        Опция упрощает процесс заведения пользователей, но созданный таким образом пользователь не сможет выполнять никаких операций с ресурсами в облаке. Исключение — те ресурсы, на которые назначены роли [публичной группе](../../../iam/concepts/access-control/public-group.md) `All users` или `All authenticated users`.

            Если опцию не включать, то пользователь, которого не добавили в организацию, не сможет войти в консоль управления, даже если пройдет аутентификацию на вашем IdP-сервере. В этом случае вы можете управлять списком пользователей, которым разрешено пользоваться ресурсами Yandex Cloud.

        * `cookieMaxAge` — время, в течение которого браузер не должен требовать у пользователя повторной аутентификации.

        * `issuer` — идентификатор IdP-сервера, на котором должна происходить аутентификация.

            Используйте ссылку, которая указана в поле **Идентификатор Microsoft Entra** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

            ```text
            https://sts.windows.net/<идентификатор_SAML-приложения>/
            ```

        * `ssoUrl` — URL-адрес страницы, на которую браузер должен перенаправить пользователя для аутентификации.

            Используйте ссылку, которая указана в поле **URL-адрес входа** на странице **Вход на основе SAML** в Entra ID. Формат ссылки:

            ```text
            https://login.microsoftonline.com/<идентификатор_SAML-приложения>/saml2
            ```

            В ссылке допустимо использовать только протоколы HTTP и HTTPS.

        * `ssoBinding` — укажите тип привязки для Single Sign-on. Большинство поставщиков поддерживают тип привязки `POST`.

        * `forceAuthn` — параметр, который включает принудительную повторную аутентификацию пользователя по истечении сессии в Yandex Cloud. Необязательный параметр.

    1. Чтобы создать федерацию, воспользуйтесь методом REST API [create](../../saml/api-ref/Federation/create.md) для ресурса [Federation](../../saml/api-ref/Federation/index.md) или вызовом gRPC API [FederationService/Create](../../saml/api-ref/grpc/Federation/create.md) и передайте в запросе файл с параметрами запроса.
       
       Пример запроса:
       
       ```bash
       curl \
         --request POST \
         --header "Content-Type: application/json" \
         --header "Authorization: Bearer <IAM-токен>" \
         --data '@body.json' \
         https://organization-manager.api.yandexcloud.kz/organization-manager/v1/saml/federations
       ```
       
       Пример ответа:
       
       ```bash
       {
        "done": true,
        "metadata": {
         "@type": "type.googleapis.com/yandex.cloud.organization-manager.v1.saml.CreateFederationMetadata",
         "federationId": "ajeobmje4dgj********"
        }
       ```
       
       В свойстве `federationId` указан идентификатор созданной федерации: сохраните его, он понадобится в дальнейшем.

{% endlist %}

### Добавьте сертификаты {#add-certificate}

При аутентификации у сервиса Yandex Identity Hub должна быть возможность проверить сертификат IdP-сервера. Для этого добавьте [скачанный ранее](#azure-settings) сертификат в федерацию:

{% list tabs group=instructions %}

- Интерфейс Cloud Center {#cloud-center}

  1. Войдите в сервис [Yandex Identity Hub](https://kz.center.yandex.cloud/organization).
  
  1. На панели слева выберите ![VectorSquare](../../../_assets/console-icons/vector-square.svg) **Федерации**.
  
  1. Нажмите на строку с федерацией, для которой нужно добавить сертификат.
  
  1. Внизу страницы в блоке **Сертификаты** нажмите кнопку **Добавить сертификат**.
  
  1. Введите название и описание сертификата.
  
  1. Выберите способ добавления сертификата:
  
      * Чтобы добавить сертификат в виде файла, нажмите **Выбрать файл** и укажите путь к нему.
      * Чтобы вставить скопированное содержимое сертификата, выберите способ **Текст** и вставьте содержимое.
  
  1. Нажмите кнопку **Добавить**.

- CLI {#cli}

  Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), [установите и инициализируйте его](../../../cli/quickstart.md#install).

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

  1. Посмотрите описание команды добавления сертификата:

      ```bash
      yc organization-manager federation saml certificate create --help
      ```

  1. Добавьте сертификат для федерации, указав путь к файлу сертификата:

      ```bash
      yc organization-manager federation saml certificate create \
        --federation-id <ID_федерации> \
        --name "my-certificate" \
        --certificate-file certificate.cer
      ```

- API {#api}

  Воспользуйтесь методом [create](../../saml/api-ref/Certificate/create.md) для ресурса [Certificate](../../saml/api-ref/Certificate/index.md):

  1. Сформируйте тело запроса. В свойстве `data` укажите содержимое сертификата:

      ```json
      {
        "federationId": "<ID_федерации>",
        "name": "my-certificate",
        "data": "-----BEGIN CERTIFICATE..."
      }
      ```

  1. Отправьте запрос на добавление сертификата:

      ```bash
      export IAM_TOKEN=CggaAT********
      curl \
        --request POST \
        --header "Content-Type: application/json" \
        --header "Authorization: Bearer ${IAM_TOKEN}" \
        --data '@body.json' \
        "https://organization-manager.api.yandexcloud.kz/organization-manager/v1/saml/certificates"
      ```

{% endlist %}

{% note tip %}

Не забывайте своевременно перевыпускать сертификаты и добавлять их в федерацию.

Чтобы не пропустить момент окончания срока действия сертификата, [подпишитесь](../../operations/subscribe-user-for-notifications.md) на уведомления от организации. Уведомления направляются подписанным пользователям за 60, 30 и 5 дней до момента прекращения действия сертификата, а также после того, как сертификат становится недействительным.

{% endnote %}

## Настройка системы единого входа (SSO) {#sso-settings}

### Укажите URL для перенаправления {#add-link}

Когда вы создали федерацию, завершите создание SAML-приложения в Azure:

1. Откройте страницу настроек SAML-приложения **Вход на основе SAML**.

1. В разделе **1. Базовая конфигурация SAML** укажите сведения о Yandex Cloud, выступающем в роли поставщика услуг. Для этого в полях **Идентификатор (сущности)** и **URL-адрес ответа (URL-адрес службы обработчика утверждений)** укажите URL, на который пользователи будут перенаправляться после аутентификации:

   ```text
   https://kz.auth.yandex.cloud/federations/<ID_федерации>
   ```



1. Нажмите **Сохранить**.

### Настройте сопоставление атрибутов пользователей {#claims-mapping}

{% note warning %}

Настройка сопоставления атрибутов обязательна.

{% endnote %}

После аутентификации пользователя IdP-сервер отправит в Yandex Cloud SAML-сообщение, которое будет содержать:

* информацию об успешной аутентификации;

* атрибуты пользователя, такие как идентификатор Name ID, имя и адрес электронной почты.

Чтобы настроить сопоставление между атрибутами SAML-сообщения и персональными данными, на странице **Вход на основе SAML** в разделе **2. Утверждения и атрибуты пользователя** нажмите **Изменить**.

Типы персональных данных, которые поддерживает Yandex Identity Hub для Entra ID, приведены ниже.

Данные пользователя | Комментарий | Атрибуты приложений
------------------- | ----------- | -------------------
Уникальный идентификатор пользователя (Name ID) | Обязательный атрибут.<br> По умолчанию в Entra ID в качестве источника атрибута используется User Principal Name (UPN) в формате `<логин>_<домен>#EXT#@<поставщик>.onmicrosoft.com`. При добавлении пользователей в федерацию вручную такой формат Name ID не поддерживается. Рекомендуется в Entra ID изменить источник атрибута: вместо UPN `user.userprincipalname` выбрать адрес электронной почты `user.mail`. | Утверждение **Уникальный идентификатор пользователя (ID)**
Фамилия | Отображается в сервисах Yandex Cloud.<br> Ограничение значения по длине: 64 символа. | `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname`
Имя | Отображается в сервисах Yandex Cloud.<br> Ограничение значения по длине: 64 символа. | `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname`
Полное имя | Отображается в сервисах Yandex Cloud.<br>Пример: `Иван Иванов`.<br> Ограничение значения по длине: 64 символа. | `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name`
Почта | Используется для отправки уведомлений из сервисов Yandex Cloud.<br>Пример:&nbsp;`ivanov@example.com`.<br> Ограничение значения по длине: 256 символов. | `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`

{% note warning %}

Если значение атрибута превышает ограничение по длине, то часть значения, выходящая за пределы ограничения, отбрасывается.

{% endnote %}

### Добавьте пользователей в организацию {#add-users-to-org}

Если при [создании федерации](#yc-settings) вы не включили опцию **Автоматически создавать пользователей**, федеративных пользователей нужно добавить в организацию вручную.

Для этого вам понадобятся пользовательские Name ID. Их возвращает IdP-сервер вместе с ответом об успешной аутентификации.

При включенной опции **Автоматически создавать пользователей** в федерацию будут добавлены только пользователи, которые впервые авторизуются в облаке. Если федеративный пользователь был удален, добавить его повторно можно только вручную.

Добавить пользователя может администратор (роль `organization-manager.admin`) или владелец (роль `organization-manager.organizations.owner`) организации. О том, как назначить пользователю роль, читайте в разделе [Роли](../../security/index.md#add-role).

{% note info %}

Для доступа пользователя к [консоли управления](https://kz.console.yandex.cloud), назначьте ему роль на [облако](../../security/index.md#access-binding-cloud). Для безопасности вы можете назначить одну из ролей с минимальными привилегиями, например `resource-manager.clouds.member`, но также можно назначить и другие роли, если вы знаете, какие права вы хотите предоставить приглашенным пользователям.

Чтобы дать эти права сразу всем пользователям в организации, назначьте роль [системной группе](../../../iam/concepts/access-control/system-group.md#allOrganizationUsers) `All users in organization X`. При работе с CLI, API или Terraform назначение дополнительных ролей не требуется.

{% endnote %}

{% list tabs group=instructions %}

- Интерфейс Cloud Center {#cloud-center}

  1. Перейдите в сервис [Yandex Identity Hub](https://kz.center.yandex.cloud/organization).
  
  1. На панели слева выберите ![icon-users](../../../_assets/console-icons/person.svg) **Пользователи**.
  
  1. В правом верхнем углу нажмите кнопку ![person-plus](../../../_assets/console-icons/person-plus.svg) **Добавить пользователя** и в выпадающем списке выберите ![key](../../../_assets/console-icons/key.svg) **Добавить федеративных пользователей**.
  
  1. В поле **Федерация** выберите федерацию удостоверений, из которой необходимо добавить пользователей.
  
  1. В поле **Пользователи** перечислите Name ID пользователей, разделяя их пробелами или переносами строк.
  
  1. Нажмите **Добавить**. Пользователи будут подключены к организации.

- CLI {#cli}

  Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), [установите и инициализируйте его](../../../cli/quickstart.md#install).

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

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

      ```bash
      yc organization-manager federation saml add-user-accounts --help
      ```

  1. Добавьте пользователей, перечислив их Name ID через запятую:

      ```bash
      yc organization-manager federation saml add-user-accounts --id <ID_федерации> \
        --name-ids=alice@example.com,bob@example.com,charlie@example.com
      ```

      Где:

      * `--id` — идентификатор федерации.

      * `--name-ids` — Name ID пользователей.

- API {#api}

  Чтобы добавить пользователей федерации в облако:

  1.  Сформируйте файл с телом запроса, например `body.json`. В теле запроса укажите массив Name ID пользователей, которых необходимо добавить:

      ```json
      {
        "nameIds": [
          "alice@example.com",
          "bob@example.com",
          "charlie@example.com"
        ]
      }
      ```
  1.  Отправьте запрос, указав в параметрах идентификатор федерации:

      ```bash
      curl \
        --request POST \
        --header "Content-Type: application/json" \
        --header "Authorization: Bearer <IAM-токен>" \
        --data '@body.json' \
        https://organization-manager.api.yandexcloud.kz/organization-manager/v1/saml/federations/<ID_федерации>:addUserAccounts
      ```

{% endlist %}

## Проверка аутентификации {#test-auth}

Когда вы закончили настройку SSO, протестируйте, что все работает:

1. Откройте браузер в гостевом режиме или режиме инкогнито.

1. Перейдите по URL для входа в консоль:

   ```text
   https://kz.console.yandex.cloud/federations/<ID_федерации>
   ```

   {% cut "Как получить ID федерации" %}

   1. Войдите в сервис [Yandex Identity Hub](https://kz.center.yandex.cloud/organization).
   1. На панели слева выберите ![VectorSquare](../../../_assets/console-icons/vector-square.svg) **Федерации**.
   1. Выберите нужную федерацию и на странице с информацией о ней скопируйте значение поля **Идентификатор**.

   {% endcut %}

   Браузер должен перенаправить вас на страницу аутентификации в Microsoft.

1. Введите данные для аутентификации и нажмите кнопку **Далее**.

После успешной аутентификации IdP-сервер перенаправит вас по URL `https://kz.auth.yandex.cloud/federations/<ID_федерации>`, который вы указали в настройках Entra ID, а после — на главную страницу [консоли управления](https://kz.console.yandex.cloud). В правом верхнем углу вы сможете увидеть, что вошли в консоль от имени федеративного пользователя.

#### Что дальше {#what-is-next}

* [Назначьте роли добавленным пользователям](../../security/index.md#add-role).