Изменить статус 2FA

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

Чтобы выполнить запрос, приложению требуется разрешение на управление обязательной двухфакторной аутентификацией. Убедитесь, что вы включили его при настройке приложения на OAuth-сервере Яндекса.

Запрос

PUT https://cloud-api.yandex.net/v1/directory/organizations/{org_id}/settings/2fa

Path-параметры

Имя параметра

Тип

Описание

org_id *

integer

Идентификатор организации.

Заголовки

Authorization: OAuth <токен>
Content-Type: application/json

Тело

Имя параметра

Тип

Описание

enabled *

boolean

Статус обязательной двухфакторной аутентификации:

  • true — включена;
  • false — выключена.

setup_grace_period_seconds

integer

Период (в секундах), в течение которого у пользователя в процессе авторизации есть возможность отложить настройку двухфакторной аутентификации, например 3600. По истечении этого периода возможность отложить настройку отключается. Максимальный период — 6 месяцев (16070400)

enforcement_mode

string

Режим двухфакторной аутентификации:

  • per_domain — сразу всем пользователям с аккаунтами на домене организации;
  • per_user — только отдельным сотрудникам. После включения двухфакторной аутентификации в режиме per_user настроить ее для конкретных сотрудников можно с помощью метода, описанного в разделе Изменить статус персональной 2FA.

second_factor_type

string

Способ аутентификации:

  • phone — через Яндекс ID;
  • totp — через приложение для создания одноразовых паролей, например Яндекс Ключ.

preferred_phone_validation_method

string

Способ аутентификации через Яндекс ID, если в предыдущем параметре выбран phone:

  • default — определяется автоматически;
  • call — звонок по номеру телефона.

Пример

Пример запроса
curl --request PUT \
  --url https://cloud-api.yandex.net/v1/directory/organizations/123456/settings/2fa \
  --header 'authorization: OAuth <токен>' \
  --header 'content-type: application/json' \
  --data '{
  "enabled": true,
  "setup_grace_period_seconds": 3600,
  "enforcement_mode": "per_domain",
  "second_factor_type": "totp"
}'

Ответ

Успешный ответ

Результатом корректного запроса является ответ с кодом 200 и телом в формате JSON, где содержится объект с информацией о статусе 2FA — в нем будут указаны только те параметры, которые передавались в запросе.

200 OK — запрос выполнен успешно.

Имя параметра

Тип

Описание

enabled *

boolean

Статус обязательной двухфакторной аутентификации:

  • true — включена;
  • false — выключена.

setup_grace_period_seconds

integer

Период (в секундах), в течение которого у пользователя в процессе авторизации есть возможность отложить настройку двухфакторной аутентификации, например 3600. По истечении этого периода возможность отложить настройку отключается. Максимальный период — 6 месяцев (16070400).

enforcement_mode

string

Режим двухфакторной аутентификации:

  • per_domain — сразу всем пользователям с аккаунтами на домене организации;
  • per_user — только отдельным сотрудникам. У кого именно из сотрудников настроен признак необходимости прохождения 2FA, если она включена в организации, можно узнать с помощью метода, описанного в разделе Посмотреть статус персональной 2FA.

second_factor_type

string

Способ аутентификации:

  • phone — через Яндекс ID;
  • totp — через приложение для создания одноразовых паролей, например Яндекс Ключ.

preferred_phone_validation_method

string

Способ аутентификации через Яндекс ID, если в предыдущем параметре выбран phone:

  • default — определяется автоматически;
  • call — звонок по номеру телефона.
Пример ответа
{
  "enabled": true,
  "setup_grace_period_seconds": 3600,
  "enforcement_mode": "per_domain",
  "second_factor_type": "totp"
}

Неуспешный ответ

Ошибки могут быть со следующими HTTP-статусами:

  • 400 Bad Request — параметры запроса не заданы или заданы неверно;
  • 401 Unauthorized — пользователь не авторизован;
  • 403 Forbidden — у пользователя или приложения нет прав на управление двухфакторной аутентификацией;
  • 404 Not Found — запрашиваемая организация не найдена;
  • 422 Invalid Data — некорректное тело запроса;
  • 500 Internal Server Error — ошибка произошла на стороне сервера (в этом случае попробуйте повторно отправить запрос через некоторое время).