Firebase - Проверить пароль

1

У меня есть сценарий, который требует проверки введенного пароля против пароля пользователя firebase до того, как пользователь выполнит необратимую задачу. Это отличается от создания учетной записи или входа в систему. Как вы можете проверить пароль для firebase? Это не похоже на свойство password в firebase.auth().currentUser.

Обновление: пользователь должен подтвердить свой пароль, а кнопка "Удалить" выполнит функцию, чтобы проверить его. Если он соответствует паролю firebase, кнопка "Удалить" преуспеет в запуске довольно модального всплывающего окна.

Изображение 174551

Теги:
firebase

1 ответ

0

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

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

Обновить:

Другая возможность - использовать метод reauthenticateWithCredential. Если метод возвращает успех, выполняйте свою чувствительную задачу. Если это не удается, попросите своего пользователя ввести правильный пароль.

В соответствии с вашим запросом, вы должны повторно аутентифицировать пользователя, используя его адрес электронной почты и пароль:

// First you get your current user using Auth :

let currentUser = Auth.auth()?.currentUser

// Then you build up your credential using the current user current email and password :

let credential = EmailAuthProvider.credential(withEmail: email, password: password)    

// use the reauthenticate method using the credential :
 currentUser?.reauthenticate(with: credential, completion: { (error) in

    guard error == nil else {
        return
    }

    // If there is no error, you're good to go

    // ...Do something interesting here

})

Дополнительную информацию в документации Firebase можно найти здесь: https://firebase.google.com/docs/auth/ios/manage-users

  • 0
    Можете ли вы привести пример reauthenticateWithCredential . Это требует передачи credential аргумента, который я не уверен, как использовать.
  • 0
    Конечно, я обновлю свой ответ!

Ещё вопросы

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