[Документация Yandex Cloud](../../../index.md) > [Yandex Identity Hub](../../index.md) > [Пошаговые инструкции](../index.md) > Аутентификация > Управление MFA > Создать политику MFA

# Создать политику MFA

[Политики MFA](../../concepts/mfa.md#mfa-policies) позволяют настроить [многофакторную аутентификацию](https://ru.wikipedia.org/wiki/Многофакторная_аутентификация) (MFA) для [федеративных](../../../iam/concepts/users/accounts.md#saml-federation) и [локальных](../../../iam/concepts/users/accounts.md#local) аккаунтов пользователей.

Чтобы создать политику MFA:

{% list tabs group=instructions %}

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

  1. Войдите в сервис [Yandex Identity Hub](https://kz.center.yandex.cloud/organization).
  1. На панели слева выберите ![shield](../../../_assets/console-icons/shield.svg) **Настройки безопасности**.
  1. Перейдите на вкладку **Политики MFA**.
  1. В правом верхнем углу страницы нажмите ![plus](../../../_assets/console-icons/plus.svg) **Создать политику** и в открывшемся окне:

      1. В поле **Название** задайте имя создаваемой политики. Требования к имени:

          * длина — от 1 до 63 символов;
          * может содержать строчные буквы латинского алфавита, цифры и дефисы;
          * первый символ — буква, последний — не дефис.
      1. (Опционально) В поле **Описание** задайте описание политики.
      1. Если вы не хотите активировать создаваемую политику при создании, выключите опцию **Политика активна**.
      1. В поле **Типы факторов** выберите дополнительные [факторы](../../concepts/mfa.md#mfa-factors) аутентификации, с помощью которых должны будут подтверждать свою личность пользователи, добавленные в целевые группы политики:
         
         * `Любые методы`. В этом варианте пользователи должны будут выбрать один из следующих стандартов дополнительного фактора аутентификации:
         
             * [WebAuthn](https://en.wikipedia.org/wiki/WebAuthn) ([FIDO2](https://en.wikipedia.org/wiki/FIDO_Alliance#FIDO2)). Дополнительным фактором аутентификации будут выступать, например, аппаратные ключи, такие как [Рутокен](https://www.rutoken.ru/) или [YubiKey](https://developers.yubico.com/Passkeys/), аутентификаторы [Passkeys](https://www.passkeys.com/), платформенные аутентификаторы, такие как [Windows Hello](https://www.microsoft.com/en-us/windows/tips/windows-hello), и т.п. Подробнее о [поддержке WebAuthn браузерами и операционными системами](../../concepts/mfa.md#webauthn-support).
         
                 {% note warning %}
         
                 Расширения браузера, у которых есть возможность управлять вводом паролей, могут вызывать ошибки при вводе дополнительных факторов. При возникновении ошибок рекомендуется отключать такие расширения.
         
                 {% endnote %}
         
             * [TOTP](https://ru.wikipedia.org/wiki/TOTP). Дополнительным фактором аутентификации будут выступать одноразовые коды, генерируемые специальными приложениями-аутентификаторами.
             * [SMS](https://ru.wikipedia.org/wiki/SMS). Дополнительным фактором аутентификации будут выступать одноразовые коды, отправляемые в коротких сообщениях на заданный номер мобильного телефона.
         
                 {% note info %}
                 
                 Функциональность SMS в качестве фактора аутентификации находится на стадии [Preview](../../../overview/concepts/launch-stages.md) и доступна только клиентам с [тарифицируемым лимитом](../../pricing.md#prices) пользователей Yandex Identity Hub. Чтобы получить доступ, обратитесь в [техническую поддержку](https://kz.center.yandex.cloud/support) или к вашему аккаунт-менеджеру.
                 
                 {% endnote %}
         
         * `Любые, кроме SMS`. В этом варианте пользователь должен будет использовать факторы аутентификации по стандартам [WebAuthn](https://en.wikipedia.org/wiki/WebAuthn) или [TOTP](https://ru.wikipedia.org/wiki/TOTP).
         * `Устойчивые к фишингу`. В этом варианте пользователь должен будет использовать только факторы аутентификации по стандарту [WebAuthn](https://en.wikipedia.org/wiki/WebAuthn) как наиболее безопасные.
      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. Посмотрите описание команды CLI для создания политики MFA:

     ```bash
     yc organization-manager mfa-enforcement create --help
     ```

  1. Создайте политику MFA, выполнив команду:

      ```bash
      yc organization-manager mfa-enforcement create \
        --organization-id <идентификатор_организации> \
        --acr-id <тип_фактора_аутентификации> \
        --ttl <время_жизни> \
        --status <статус_политики> \
        --apply-at <время_активации> \
        --enroll-window <срок_создания> \
        --name <имя_политики> \
        --description <описание_политики>
      ```

     Где:

     * `--name` — имя политики. Требования к формату имени:

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

     * `--organization-id` — идентификатор организации.
     * `--acr-id` — тип [фактора](../../concepts/mfa.md#mfa-factors) аутентификации. Возможные значения:
       
       * `any-mfa` — факторы аутентификации без ограничений по безопасности.
       
           {% note info %}
           
           Функциональность SMS в качестве фактора аутентификации находится на стадии [Preview](../../../overview/concepts/launch-stages.md) и доступна только клиентам с [тарифицируемым лимитом](../../pricing.md#prices) пользователей Yandex Identity Hub. Чтобы получить доступ, обратитесь в [техническую поддержку](https://kz.center.yandex.cloud/support) или к вашему аккаунт-менеджеру.
           
           {% endnote %}
       
       * `any-except-sms` — только FIDO2 или TOTP-факторы.
       * `phr` — только FIDO2-факторы, устойчивые к фишингу.
     * `--ttl` — срок действия учетных данных в днях.
     * `--status` — статус политики: `status-active` — активна, `status-inactive` — неактивна.
     * `--apply-at` — время, по истечении которого политика станет активна. Необязательный параметр.
     * `--enroll-window` — период в днях после регистрации, в течение которого пользователь должен добавить второй фактор аутентификации.
     * `--description` — описание политики. Необязательный параметр.

  1. (Опционально) Чтобы активировать неактивную политику MFA, выполните команду:

      ```bash
      yc organization-manager mfa-enforcement activate \
        --id <идентификатор_политики>
      ```

- Terraform {#tf}

  [Terraform](https://www.terraform.io/) позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.
  
  Terraform распространяется под лицензией [Business Source License](https://github.com/hashicorp/terraform/blob/main/LICENSE), а [провайдер Yandex Cloud для Terraform](https://github.com/yandex-cloud/terraform-provider-yandex) — под лицензией [MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/).
  
  Подробная информация о ресурсах провайдера в документации на сайте [Terraform](https://www.terraform.io/docs/providers/yandex/index.html) или в [зеркале](../../../terraform/index.md).

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

  1. Опишите в конфигурационном файле Terraform параметры политики MFA:

     ```hcl
     resource "yandex_organizationmanager_mfa_enforcement" "example_mfa_policy" {
       name            = "<имя_политики>"
       organization_id = "<идентификатор_организации>"
       acr_id          = "<тип_фактора_аутентификации>"
       ttl             = "<время_жизни>"
       status          = "<статус_политики>"
       apply_at        = "<время_активации>"
       enroll_window   = "<срок_создания>"
       description     = "<описание_политики>"
     }
     ```

     Где:
     
     * `name` — имя политики. Обязательный параметр. Требования к формату имени:
     
       * длина — от 1 до 63 символов;
       * может содержать строчные буквы латинского алфавита, цифры и дефисы;
       * первый символ — буква, последний — не дефис.
     
     * `organization_id` — идентификатор организации. Обязательный параметр.
     * `acr_id` — тип [фактора](../../concepts/mfa.md#mfa-factors) аутентификации. Обязательный параметр. Возможные значения:
     
       * `any-mfa` — факторы аутентификации без ограничений по безопасности.
       * `any-except-sms` — только FIDO2 или TOTP-факторы.
       * `phr` — только FIDO2-факторы, устойчивые к фишингу.
     
     * `ttl` — срок действия учетных данных в формате времени, например, `336h0m0s` для 14 дней. Обязательный параметр.
     * `status` — статус политики. Необязательный параметр, возможные значения: 
         * `MFA_ENFORCEMENT_STATUS_ACTIVE` — активна;
         * `MFA_ENFORCEMENT_STATUS_INACTIVE` — неактивна.
     * `apply_at` — время, по истечении которого политика станет активна, в формате RFC3339 (например, `2024-12-31T23:59:59Z`). Необязательный параметр.
     * `enroll_window` — период времени после регистрации, в течение которого пользователь должен добавить второй фактор аутентификации. Указывается в формате времени, например, `720h0m0s` для 30 дней. Обязательный параметр.
     * `description` — описание политики. Необязательный параметр.
     
     Подробнее о параметрах ресурса `yandex_organizationmanager_mfa_enforcement` читайте в [документации провайдера](../../../terraform/resources/organizationmanager_mfa_enforcement.md).

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

     1. В терминале перейдите в директорию с конфигурационным файлом.
     1. Проверьте корректность конфигурации с помощью команды:
     
        ```bash
        terraform validate
        ```
     
        Если конфигурация является корректной, появится сообщение:
     
        ```bash
        Success! The configuration is valid.
        ```
     
     1. Выполните команду:
     
        ```bash
        terraform plan
        ```
     
        В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
     1. Примените изменения конфигурации:
     
        ```bash
        terraform apply
        ```
     
     1. Подтвердите изменения: введите в терминале слово `yes` и нажмите **Enter**.

     Terraform создаст все требуемые ресурсы. Проверить создание политики MFA можно в интерфейсе [Cloud Center](https://kz.center.yandex.cloud/organization) или с помощью команды [CLI](../../../cli/index.md):

     ```bash
     yc organization-manager mfa-enforcement get <идентификатор_политики>
     ```

- API {#api}

  Воспользуйтесь методом REST API [Create](../../api-ref/MfaEnforcement/create.md) для ресурса [MfaEnforcement](../../api-ref/MfaEnforcement/index.md) или вызовом gRPC API [MfaEnforcementService/Create](../../api-ref/grpc/MfaEnforcement/create.md).

{% endlist %}

{% note info %}

Чтобы политика MFA применялась к определенным учетным записям пользователей, [добавьте](add-users.md) в целевые группы этой политики нужных пользователей или [группы](../../concepts/groups.md), в которые входят эти пользователи.

{% endnote %}

#### Полезные ссылки {#see-also}

* [Изменить политику MFA](update-policy.md)
* [Применить политику MFA к пользователям](add-users.md)
* [Управлять исключениями политики MFA](excluded-audience.md)
* [Активировать и деактивировать политику MFA](deactivate-reactivate-policy.md)
* [Удалить политику MFA](delete-policy.md)
* [Удалить MFA-фактор и сбросить дату верификации](manage-verification.md)
* [Многофакторная аутентификация в Yandex Identity Hub](../../concepts/mfa.md)