Firebase Username / Password Authentication - разрешить вход только одному устройству одновременно

1

Я использую Firebase Имя пользователя/Пароль аутентификации в моем приложении для Android. Но, похоже, это позволяет любому количеству устройств войти в систему, используя одно имя пользователя/пароль. Есть ли способ ограничить вход в систему одним устройством (или ограниченным небольшим количеством устройств)?

Я ищу что-то вроде этого. Когда новое устройство выполняет вход с использованием существующего имени пользователя/пароля:

   a) validate the username and password

   b) sign-out all devices currently signed in with that username/password

   c) then sign-in the new device

Я видел кое-что об отзыве токенов обновления (https://firebase.google.com/docs/auth/admin/manage-sessions) - это можно использовать для достижения вышеуказанного?

Альтернативно, есть ли способ ограничить количество одновременных входов?

Прямо сейчас я не использую базы данных - предпочел бы решение, которое не требует использования базы данных.

Теги:
firebase
firebase-authentication

2 ответа

0

Я не думаю, что это возможно без базы данных, потому что по умолчанию firebase не предоставляет никакого способа ограничения или получения активных сессий для пользователя. Что вы можете сделать, так это то, что после входа в систему вы можете вести историю входа пользователя в систему для разных устройств, а также выходить из системы, отзывая маркеры обновления для этих устройств. Отменить обновление токена

Надеюсь это поможет!

  • 0
    Надеялся обойтись без базы данных ...
0

Отменить обновление токена

FirebaseAuth.getInstance().revokeRefreshTokens(uid);

При отзыве пользователь выходит из системы и получает запрос на повторную проверку подлинности.

  • 0
    Вы сделали это? С конца приложения (клиента)? Разве он не отменяет вход для последнего входа? Кроме того, для этого требуется, чтобы Firebase Admin SDK использовался в конце приложения? Немного проблем безопасности.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню