Что происходит с анонимными пользователями Firebase?

Я хочу знать, что будет с пользователями моего приложения, что я использовал для них метод анонимного знака.

Документация Firebase действительно БЕСПЛАТНО и не объясняет все и ожидает, что разработчик узнает сам. Я нашел в своей старой версии документацию, что анонимный сеанс истекает в зависимости от времени истечения срока действия, был установлен на вкладке "Вход" и "Аут", но даже там не упоминалось, что это означает, что только конец сеанса или это означает, что идентификатор пользователя будет удален также из моего список пользователей приложений или что ТОЧНО произошло?

Я нашел этот ответ, но это действительно неприемлемо. Количество анонимных пользователей будет расти очень быстро, если вы сделаете веб-приложение и сделаете все, что угодно. Я даже не вижу число пользователей моего приложения в моей панели инструментов!!!!! И что же мне делать? должен ли я разработать панель мониторинга для моих данных, или команда Firebase должна это сделать? По крайней мере, для управления пользователями у меня должно быть больше энергии, чем просто поиск пользователя по электронной почте, а при использовании пользовательского входа вы также не можете этого сделать.

Ответы

Ответ 1

Срок действия анонимных пользователей не истекает, и в настоящее время не существует автоматического способа их очистки.

Firebase не удаляет их автоматически, потому что не знает, хранит ли пользователь данные, связанные с этим логином, - только создатель приложения. Представьте, что вы играете в игру-головоломку на своем телефоне и достигните уровня 100. Затем, когда вы перейдете на уровень 101 в следующем году, весь прогресс будет потерян. Firebase не может просто предполагать, что пользователь неактивен в течение года, это означает, что учетная запись может быть удалена.

Хотя есть пара инструментов, которые должны помочь.

1) Админ SDK и Firebase CLI список пользователей.

2) Связывание нескольких провайдеров аутентификации

3) Auth State Persistance

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

Однако лучше было бы убедиться, что для каждого пользователя создается только одна учетная запись. Если вы создаете анонимную учетную запись, чтобы помочь пользователям сохранять данные перед входом в систему, вы можете подумать о том, чтобы попросить их связать поставщика аутентификации (например, Google или электронную почту). Если вы связываете учетную запись, а не создаете новую, вы избегаете заброшенных учетных записей от активных пользователей.

В общем, вы также захотите использовать постоянство состояния аутентификации, чтобы обеспечить создание не большего количества учетных записей, чем необходимо. Создание 1 учетной записи на нового посетителя, а не 1 на каждого, кто неоднократно посещает вашу страницу, значительно поможет контролировать рост пользователей.

Ответ 2

В моем случае я использую метод анонимного входа для аутентификации без ведома пользователя. Каждый раз, когда пользователь покидает приложение, удаляйте анонимного пользователя с помощью -

FirebaseAuth.getinstance().currentuser?.delete()

Это не приведет к накоплению анонимного пользователя и ограничит количество анонимных пользователей в приложении.

Ответ 3

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

Так как Firebase не предоставляет способ перечисления зарегистрированных пользователей, вы должны убедиться, что вы храните какой-то список пользователей в базе данных. Затем вы можете использовать sdk admin.js, чтобы получить данные пользователя, проверить, является ли пользователь анонимным, и найти , когда пользователь был создан. По соображениям производительности вы можете захотеть сохранить эту информацию в специальной области вашей базы данных и получить ее сразу. После того как вы определили устаревшего анонимного пользователя, его можно легко удалить.