Авторизация пользователя по устройству(смартфону)?

Как можно организовать авторизацию пользователя на сайте по устройству? Необходим упрощенный вход на сайт для отдельно выбранных пользователей со смартфона без ввода пары логин/пароль. Реализация на php.
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 3
Это крайне не секурно, тк без аутентификации невозможно убедиться, что это именно тот девайс, который заявлен.
Посмотри в сторону SSO и доменной аутентификации (через Active Directory)
Ответ написан
Комментировать
AgentSmith
@AgentSmith
Это мой правильный ответ на твой вопрос
Так делать ни в коем случае нельзя.
Забудь про это
Ответ написан
Комментировать
@rPman
Храни токен сессии авторизации в куках браузера, тогда авторизация понадобится однократная.

Какую именно авторизацию выбрать правильно?

Гугл предлагает авторизацию через свой аккаунт, т.е. если в браузере есть авторизация (а в дефолтном она будет, если в смартфоне добавлен аккаунт гугла, а он добавлен более чем в подавляющем количестве случаев, так как по дефолту многие смартфоны даже не дадут собой пользоваться без этого), в этом случае для получения доступа пользователю будет дан соответствующий запрос в браузере

https://developers.google.com/identity/protocols/o...

Для пользователя в этом случае, обычно этот процесс это пару тапов по экрану, без ввода логина и пароля

p.s. поддержку авторизации через другие аккаунты (например фейсбук или яндекс) смотреть у них соответственно

p.p.s. более универсально, но дороже и потребует от клиента его номер телефона - это двухфакторная авторизация по sms (потребует договор с провайдером на доставку sms и какая либо библиотека для двухфакторки)

p.p.p.s. самое красивое (ничьи персональные данные никуда не уйдут) предложить пользователю использовать Time based One Time Password, один из популярных стандартов (от google authenticator rfc6238), гугл к примеру показывает эту реализацию. Пользователю потребуется на смартфон поставить соответствующее приложение (их тьма помимо самого гугла, есть встроенные в парольные менеджеры, например keepass2droid) но нигде регистрироваться и давать свой номер не придется, и владельцу сервера ни за что платить так же не понадобится.

Вопреки всеобщему мнению, эта авторизация вполне более чем достаточна (при наличии защит от брутфорса на сервере само собой), пользователю достаточно сказать свой логин и текущее значение TOTP, никаких паролей или email больше не нужно (чаще email нужен для других задач, когда сервису нужно как то связаться с клиентом)

p......s. еще есть авторизация через GPG (плохо с мобильными да и для десктопных браузеров расширения не сильно популярны), еще менее редкое - авторизация через приватные ключи криптовалютных кошельков... но такую экзотику вам глупо предлагать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы