Изменить пароль Firebase в Ionic без аутентификации - PullRequest
0 голосов
/ 26 декабря 2018

Я хочу изменить пароль пользователя без аутентификации пользователя, и я хочу сделать это с помощью Ionic.

В настоящее время это то, что у меня есть:

const user = firebase.auth().currentUser;
const credentials = firebase.auth.EmailAuthProvider.credential(user.email, 
    this._password);
user.reauthenticateWithCredential(credentials)

Проблема заключается в том,что я хочу изменить пароль пользователя без аутентификации пользователя, и это то, что я не могу сделать с firebase.auth (). currentUser.Последний не будет работать, если мы имеем дело с несколькими пользователями.

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

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

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

0 голосов
/ 26 декабря 2018

Firebase предоставляет только один способ сброса пароля без авторизации, т. Е. сброс пароля по электронной почте .

Вы можете отправить электронное письмо для сброса пароля пользователю с помощью метода sendPasswordResetEmail.Например:

var auth = firebase.auth();
var emailAddress = "user@example.com";

auth.sendPasswordResetEmail(emailAddress).then(function() {
  // Email sent.
}).catch(function(error) {
  // An error happened.
});

Вы также можете настроить формат шаблона электронной почты .Надеюсь, это поможет.

...