Благодаря возможности привязывать номера телефонов к учетным записям пользователей, безопасность акаунтов многократно повышена. Для того, чтобы сделать этот процесс бесплатным и полностью отказаться от паролей, можно использовать подтверждение номера телефона звонком, а не смс. Для этого можно использовать сервис https://authenticationbycall.com. Ниже описан процесс интеграции идентификации пользователей по номерам телефонов. Добавление авторизации звонком на свою страницу:
-
Авторизоваться на странице https://authenticationbycall.com/login под своим номером телефона
-
На странице applications создать новую форму, ввести название и адреса страниц. Так как будет использоваться API - можно ввести основную страницу своего сайта
-
Из профиля созданной формы потребуется маркер формы c51f7a806ee8e0d5d8c483f359b4ff4fb4c82837f3823 и маркер API yY4pd94LduUn1DRUTRpAdVhXkK7vbJ6lHDornp5YVDVr1cB3aABv2GC0LM9
-
Для использования API необходима библиотека class.abc.php размещенная на https://github.com/rostovsales/authenticationbycall-api
-
Первый этап авторизации - это передача номера телефона пользователя из формы на вашей страницы в систему авторизации, получение ответа с номером телефона для идентификационного звонка и уникальным идентификатором данной авторизации
$telephone = $_POST['telephone']; $api_token = 'yY4pd94LduUn1DRUTRpAdVhXkK7vbJ6lHDornp5YVDVr1cB3aABv2GC0LM9'; $form_token = 'c51f7a806ee8e0d5d8c483f359b4ff4fb4c82837f3823'; require_once 'class.abc.php'; $authenticationbycall = new abc(); $result = $authenticationbycall->authpost($api_token, $form_token, $telephone);
если все реквизиты верны, в ответе будет массив
["RU"]=>"78007755267" - номер для подтверждения номеров с префиксом +7
["ALL"]=>"74952410417" - номер для подтверждения номеров с любым префиксом
["EU"]=>"448000869805" - номер для подтверждения номеров с префиксом отличным от +7
["uniq_id"]=>"59feefb2c4ece" - уникальный идентификатор созданной авторизации
-
Показываем пользователю любой из полученных телефонных номеров для идентификационного звонка
echo "Для авторизации совершите бесплатный звонок на номер " . $result['RU'];
-
Проверяем статус авторизации пользователя
$api_token = 'yY4pd94LduUn1DRUTRpAdVhXkK7vbJ6lHDornp5YVDVr1cB3aABv2GC0LM9'; $form_token = 'c51f7a806ee8e0d5d8c483f359b4ff4fb4c82837f3823'; $uniq_id = "59feefb2c4ece"; require_once 'class.abc.php'; $authenticationbycall = new class_abc(); $result = $authenticationbycall->authget($api_token, $form_token, $uniq_id);
Статусы авторизации
auth_status = 0 - авторизация отменена
auth_status = 1 - ожидание звонка
auth_status = 2 - звонок совершен
Как только auth_status будет равен 2, значит пользователь совершил звонок со своего телефона на номер, который вы ему указали и авторизация считается успешной.
Сервис позволяет полностью отказаться от паролей и подтверждать любое значимое действие пользователя звонком.