@anton_16

Каой метод авторизации клиентов выбрать для api?

Имеется вебсайт с поддержкой авторизации в личный кабинет (ЛК), через сессии. Разрабатываются мобильные приложения(МП) для Android и IOS платформ. Встала задача реализовать авторизацию в ЛК для МП. Было рассмотрено 2 метода:

1) Простой - Basic Auth с использованием ssl
2) Более мудренный - защита через токены, как я понял данный метод:
* клиент через МП отсылает реквзиты с использованем хэш - функции
* АПИ принимает и проверяет хэш на соответствие пользователя в БД
* если проверка прошла успешно, АПИ отсылает в ответе токен. Токен рекомендуют сделать временным, чтобы уменьшить "окно" атаки на случай если он будет "потерян и найден нехорошими людьми"
* МП получает токен и использует его в своих запросах к ЛК в АПИ.
* на стороне АПИ принимаются запросы на действия с ЛК, предварительно проверив наличие и валидность токена. Если токен просрочен, то процесс получения токена повторяется

Вопросы:
> Прошу уточнить правильно ли понят мной метод по защите с токенами. Получается он намного сложнее и более нагружает апи, нежели Basic-auth !?
> Какой метод лучше выбрать и почему?
  • Вопрос задан
  • 353 просмотра
Пригласить эксперта
Ответы на вопрос 1
@DuD
делаете метод getToken. На котором пользователь взамен логина с паролем получает токен. Этот токен пишется в бд со сроком действия. И далее ко всем остальным методам клиент обращается с токеном.
Если хочется еще большей секурности то пусть шифрует токеном все тело сообщения.
SSL must have вне зависимости от выбранного типа.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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