Принцип работы 2FA: на стороне платформы
2FA на стороне платформы — генерация и проверка кода платформой
Коротко: при интеграции «на стороне платформы» код генерируется и проверяется платформой. Вы получаете результат проверки.
Кому подходит
- Роль: Разработчик
- Уровень: Опытный
Что это
Платформа сама:
- Генерирует код.
- Отправляет код через канал.
- Проверяет код, который ввёл пользователь.
- Возвращает результат: код верный или нет.
Вам не нужно ни генерировать, ни проверять код.
Это режим «На стороне платформы». Платформа сама генерирует и проверяет код.
Если вам нужна генерация кода на своей стороне — используйте режим Умный шлюз.
Перед началом
- Вы настроили 2FA-интеграцию в разделе 2FA Service.
- Вы знаете API-ключ интеграции и URL интеграции.
- У вас есть имя отправителя со статусом Активно.
Как настроить 2FA-интеграцию →
Как это работает
Шаг 1. Отправка кода
Вы отправляете запрос на URL интеграции. В ответе — requestId.
Параметры запроса:
| Что | Значение |
|---|---|
| Метод | POST |
| URL | Значение из поля «URL для интеграции» |
| Авторизация | Basic Auth: <API-ключ интеграции> (логин), пароль — пустой |
| Параметр | number — номер телефона получателя |
Пример запроса:
curl -X POST <URL для интеграции> \
-u <API-ключ интеграции> \
-d number="<номер получателя>"
Шаг 2. Платформа генерирует и отправляет код
Платформа создаёт код, отправляет его через канал и сохраняет в своей базе.
Шаг 3. Пользователь вводит код
На вашем сайте пользователь вводит код в поле.
Шаг 4. Вы отправляете код на проверку
Параметры запроса:
| Что | Значение |
|---|---|
| Метод | POST |
| URL | https://<домен OTP-сервиса>/api/v1/2fa/verify |
| Авторизация | Basic Auth: <API-ключ интеграции> |
| Параметры | requestId — из шага 1, code — код от пользователя |
Пример запроса:
curl -X POST https://<домен OTP-сервиса>/api/v1/2fa/verify \
-u <API-ключ интеграции> \
-d requestId=<requestId> \
-d code=<код>
Шаг 5. Платформа возвращает результат
Успешный ответ:
| Поле | Что содержит |
|---|---|
number | Номер телефона |
verifiedAt | Время успешной проверки |
Пример ответа:
{
"number": "12345678910",
"verifiedAt": 1234567890
}
Если код неверный — вернётся ошибка.
Пример сценария
- Пользователь хочет войти в ваш сервис.
- Ваш сервис отправляет запрос в OTP-коды.
- Платформа отправляет код по SMS.
- Пользователь вводит код.
- Ваш сервис отправляет код на проверку.
- Платформа отвечает: код верный.
- Пользователь вошёл в ваш сервис.
Результат
Вы понимаете, как работает режим «На стороне платформы», и готовы интегрировать два API-запроса в свой сервис.
Частые проблемы
Причина: канал недоступен, номер получателя неактивен или имя отправителя неактивно.
Решение: проверьте статус в EDR. Если не помогает — обратитесь в поддержку.
Причина: истёк срок действия кода или код введён неверно.
Решение: запросите новый код и повторите проверку.
Причина: неверный API-ключ интеграции.
Решение: сверьте ключ в разделе Данные для интеграции. Для 2FA используется Basic Auth — логин — API-ключ интеграции, пароль — пустой.
См. также
Нужна помощь?
- OTP-коды: support@otpcod.ru