Имеется:
Закрытое API, часть функционала с авторизацией пользователей, часть - нет.
Цель:
Ограничить возможность запросов исключительно доверенным клиентам.
Варианты:- Авторизировать клиент через JWT. Суть проста - посылаем пару ключ-секрет, проверяем и в ответ отправляем токен. Токен сохраняем на сервере. Все запросы к API идут с токеном.
Проблема заключается в хранении токенов: пара ключ-секрет для клиента одна, а токенов будет много. Стоит ли..?
UPD: Не знал что JWT не требует хранения выданного токена. Тем не менее это оставляет вопрос авторизации клиента
- На клиенте храним строку, шифруем ее и отправляем на сервер. Проверяем, если все нормально - то обрабатываем запрос. Не выдается токен, как можно понять. Ну и как плюс для каждого клиента (сколько бы их не было) - одна запись в БД.
- Еще какие либо?
Обращаю внимание:
Вопрос не о авторизации клиента парой логин-пароль, а именно о ограниченом доступе к API с клиента (моб. приложение, десктопное, веб и т.д. )