Делаю API для мобильных приложений. API должен работать для собственного мобильного приложения, а также в будущем для сторонних. Для аутентификации собственного приложения использую инструкции в документации (
Client Credentials Grant), т.е. передаю авторизационные данные (client_id, client_secret) из приложения напрямую серверу. Обратно собираюсь получать JWT-токен (JSON Web Token).
Здесь возник вопрос: идентифицировать нужно приложения (мое приложение на Android и iOS) или пользовательские девайсы?
- Если первое, то формально получается, что для сервера на момент аутентификации все девайсы на одной платформе являются одним человеком. Соответственно, и секрет в JWT у всех пользователей iOS приложения будет одинаковым.
- Если второе, то в авторизационные данные кроме
client_id и
client_secret нужно еще включить какой-то уникальный
device_id, который затем сохранять в отдельной таблице вместе с соответствующим ему секретом для JWT.
Верно ли я мыслю, и какой из путей следует выбрать?