Должен ли я сохранять токен аутентификации в своей базе данных на стороне сервера при создании мобильного приложения

#node.js #postgresql #express #authentication #jwt

Вопрос:

Я очень новичок в бэкэнде и начал создавать приложение с помощью NodeJS и Express с использованием Postgres, но меня беспокоит, должен ли я хранить токен аутентификации в самой базе данных? Если нет, то где я должен хранить его, так как пользователь будет авторизован в мобильном приложении, как навсегда.

Спасибо вам 🙂

Комментарии:

1. Нет необходимости хранить токен в БД. На мобильном устройстве вы должны сохранять его в локальном/кэш-хранилище и передавать в заголовках всякий раз, когда вы нажимаете API. На стороне NodeJS JWT обработает токен, а метод проверки токена предоставит объект токена пользователя.

2. @ChandraShekar предположим, что пользователь убивает приложение, и подключение сервера к этому приложению закрыто, в этом случае сможет ли JWT обрабатывать тот же токен аутентификации в следующий раз, когда пользователь создает или выполняет вызов API ?

3. Да, это будет обработано, и если у вас есть этот предыдущий токен аутентификации для передачи в API. Убедитесь, что у JWT есть время истечения срока действия токена. Если время действия токена истекло, вы получите неверный ответ на токен от JWT.

4. Я не думаю, что срок действия токена должен истечь, предположим, я запущу свое мобильное приложение через 10-15 дней, тогда в этом случае мой токен будет отправлен из мобильного приложения, но JWT сможет сделать то же самое, даже если я не хочу, чтобы срок действия токена истек

5. Да, это будет улажено.