#node.js #authentication #concurrency #jwt #netflix
Вопрос:
Я хочу ограничить количество сеансов для пользователя следующим образом:
- Пользователь может одновременно подключаться только к 4 различным устройствам.
- Для входа на 5-е устройство пользователю необходимо будет выйти из системы с одного из подключенных в данный момент устройств.
Я искал решение SAAS и не смог его найти. Искал библиотеки NodeJS / паспортов и не смог найти.
Затем у меня появилась следующая идея:
- Уникальным ключом БД для пользователя будет
JWT
Токен Номер телефона. - Пользователь подключится с помощью OTP (Одноразовый пароль) со своим номером телефона.
- Я сохраню
JWT
Жетон и номер телефона. - Если 5-й пользователь захочет войти в систему, я проверю, есть ли уже 5.
- Я удалю
JWT
сеанс при нажатии кнопки выхода из системы.
Итак, у меня есть 2 вопроса в этом случае:
- Знакомы ли вы с возможным, известным решением для моей ситуации (SAAS / Библиотека)?
- Является ли мое решение законным? Я вижу только 1 проблему — если пользователь не нажимает на выход, а скорее удаляет данные приложения / браузера.
Большое спасибо!