Skip to main content

Функциональные характеристики

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


1. Назначение​

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

Обслуживаются абонентские номера Российской Федерации в формате +7 (мобильные). Номер иного формата отклоняется до начала подтверждения и не тарифицируется.


2. Способы подтверждения​

2.1. Входящим вызовом​

Пользователю выдаётся номер из собственного парка SIM-карт. Он звонит на него со своего телефона; вызов принимается и автоматически отклоняется, а определившийся номер сравнивается с заявленным. При совпадении номер считается подтверждённым.

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

2.2. Исходящим вызовом​

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

2.3. Одноразовым кодом в SMS​

Платформа формирует код и отправляет его сообщением. Число попыток ввода ограничено. Текст сообщения содержит адрес сайта заказчика и его наименование, чтобы получатель видел, кто запросил код.


3. Управление парком абонентских устройств​

  • распределение нагрузки между SIM-картами, раздельно по способам подтверждения: ограничения операторов связи на вызовы и на сообщения независимы;
  • суточные ограничения на карту — общие и по отдельному способу;
  • исключение из распределения карт, переставших доставлять;
  • разрешение и запрет отдельного способа подтверждения для каждой карты;
  • учёт устройств и контроль их доступности.

4. Прикладной программный интерфейс​

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

Результат доставляется опросом состояния либо веб-перехватчиком на адрес заказчика; сообщения веб-перехватчика подписываются. Ошибки возвращаются в едином формате с машинно-читаемым кодом и идентификатором запроса.

Описание интерфейса: Интеграция с API.


5. Личный кабинет​

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


6. Учёт и тарификация​

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


7. Защита информации​

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


8. Применяемые технологии​

ЗвеноТехнологии
Серверная частьплатформа .NET, язык C#, исполнение в контейнерах под управлением Linux
Хранение данныхPostgreSQL
Состояние и счётчикиRedis
Личный кабинетодностраничное веб-приложение, TypeScript
Устройство-шлюзплатформа Android
Протокол взаимодействия с устройствамиWebSocket с отдельной схемой аутентификации

Иностранные программные продукты и облачные сервисы для работы не требуются. Размещение — на инфраструктуре, расположенной на территории Российской Федерации.