Аутентификация .NET Firebase, как сохранить учетные данныеC#

Место общения программистов C#
Ответить
Anonymous
 Аутентификация .NET Firebase, как сохранить учетные данные

Сообщение Anonymous »

У меня есть мобильное приложение на базе .NET. Он использует .NET MAUI, но не уверен, что это актуально. Я использую библиотеку FirebaseAuthentication.net Nuget, но с удовольствием выполняю свои собственные http-запросы.
При входе или регистрации я выполняю следующие вызовы

Код: Выделить всё

var userCredential = await client.CreateUserWithEmailAndPasswordAsync("email", "pwd", "Display Name");
var userCredential = await client.SignInWithEmailAndPasswordAsync("email", "pwd");
Обе функции успешно возвращают объект UserCredential, который, среди прочего, содержит как токен идентификатора, так и токен обновления.
Я бы хотел, чтобы пользователь вошел в систему даже после полного выхода из приложения и его повторного открытия. Насколько я понимаю, токен идентификатора недолговечен, и его необходимо обновить с помощью токена обновления, который практически действует в течение всего срока службы учетной записи пользователя.
Однако, похоже, не существует прямого метода, который принимает токен обновления в качестве параметра и возвращает токен идентификатора. Нужно позвонить:

Код: Выделить всё

userCredential.User.GetIdTokenAsync()
Чтобы получить выходной токен или обновленный, если срок его действия истек.
Поскольку UserCredential — это относительно сложный объект, я не думаю, что смогу сохранить токен обновления и повторно заполнить этот объект при следующем запуске приложения.
Я могу придумать одну альтернативу — сериализовать объект userCredential и сохранить его. Но это больше похоже на взлом.
Я полагаю, что могу сохранить пароль пользователя и каждый раз входить в систему в фоновом режиме, но это, скорее всего, противоречит цели использования токенов.
Есть ли лучший способ оставаться в системе между сеансами?

Подробнее здесь: https://stackoverflow.com/questions/774 ... redentials
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»