Двухфакторная аутентификация (2FA, Two Factor Authentication) — серьезный барьер для злоумышленников, так как нужно взломать (получить доступ) сразу два разных актива пользователя, например, почту и SMS. Она значительно повышает показатели защиты личных данных пользователей от преступных посягательств. 2FA также полезна и самим владельцам сайтов. Она позволяет выполнить требования законодательных актов в области защиты и сохранности персональных данных, а также защитить веб-ресурсы от несанкционированных массовых регистраций и других неприятных ситуаций.
А как организовать 2FA на сайте? Сделать это можно несколькими способами. Давайте вкратце рассмотрим их, разберемся с плюсами и минусами.
Двухфакторная аутентификация для сайта с помощью физического устройства или специального ПО
Самым надежным способом организации 2FA принято считать вариант с использованием физического устройства для генерации кодов — токена. Один из вариантов исполнения такого устройства — в форм-факторе USB-флешки. Для аутентификации пользователя его нужно подключить к компьютеру и выполнить ряд определенных действий (в зависимости от типа токена). Как говорилось выше, плюс этого варианта — высокая степень надежности. А минус — наличие самого физического устройства, которое нужно как-то получить, где-то хранить, носить с собой. К тому же заставить посетителей сайта использовать токены — задача почти невыполнимая. Большинство откажется от этого из-за неудобства.
Организовать 2FA можно также и с помощью специального ПО. Пример — софт от Webmoney. В этом примере на смартфон пользователя устанавливается приложение, которое генерирует код при каждом входе на сайт. Вариант удобнее, чем использование физического токена. Но опять же, заставить посетителя сайта установить дополнительное ПО на смартфон тоже не всегда удается. Некоторым это может не понравиться.
Авторизация по SMS и по звонку
Пожалуй, самые удобные способы для пользователей сайта. При их использовании не нужно устанавливать какое-то специальное ПО и тем более использовать какие-то физические устройства. Нужен только телефон (даже кнопочный).
При выборе подходящего способа (SMS или авторизация по звонку) обратите внимание на следующие моменты:
• Возможные задержки с доставкой SMS. Операторы допускают задержку до 24 часов (нечасто, но все-таки такое случается).
• Возможность арендовать номер в интернете для приема SMS. Эту «лазейку» иногда используют для массовых несанкционированных регистраций.
• Авторизация по звонку, в зависимости от поставщика услуги, обойдётся дешевле, чем по SMS.
В общем, если вы задумаете организовать 2FA для сайта, вариантов реализовать это несколько. Выбирайте удобный вам и посетителям вашего сайта и пользуйтесь с удовольствием.