Клиренс и 2FA (или MFA) - PullRequest
       27

Клиренс и 2FA (или MFA)

1 голос
/ 30 апреля 2020

Я использую Clearance для аутентификации в моем приложении Rails. Все больше и больше моих пользователей просят меня внедрить своего рода двухфакторную аутентификацию. Я думаю, что при входе в систему пользователи могут выбрать использование 2FA вместо входа по электронной почте и паролю.

Какой тип 2FA вы порекомендуете использовать? Мои пользователи - это в основном компании, использующие приложение для совместной работы. Они хотели бы иметь

Есть так много вариантов, что я немного потерян. Для простоты я сейчас смотрю на Google Authenticator. Это хороший выбор? А как насчет других опций, таких как отправка ссылки magi c на их адрес электронной почты, чтобы аутентифицировать их, нажав на нее (что дает преимущество в отказе от аутентификации, если пользователь покинул организацию и не имеет доступа к этому почтовому ящику больше).

Что нужно сделать, чтобы этот вид аутентификации работал с Clearance, которое я сейчас использую для аутентификации?

1 Ответ

2 голосов
/ 30 апреля 2020

Во-первых, я бы не советовал разрешать пользователям входить только с кодом 2FA. В конце концов, это фактор секунда ; Большую часть времени он будет содержать меньше энтропии, чем пароль пользователя.

Я бы порекомендовал использовать одноразовые пароли на основе времени (TOTP) с Google Authenticator в качестве клиентского приложения для управления токенами. Легко интегрировать в Rails с Active Model OTP Gem .

Отправка одноразовых кодов по электронной почте или SMS - не лучший способ. SMS 'могут быть украдены через подделку номера телефона и коды электронной почты нарушают 2fa, если злоумышленник контролирует адрес электронной почты пользователя, который также может выполнить сброс пароля, что делает его универсальным магазином для взятия учетных записей.

Если вы хотите использовать настоящий уровень техники, взгляните на U2F , основанный на криптографии c подписи.

При интеграции с Clearance Обязательно проверяйте токен 2FA только после , когда вы проверяете их имя пользователя и пароль, особенно если вы используете TOTP.

...