web-dev-qa-db-ja.com

電話番号とパスワードを使用したFirebaseAuth

Firebaseを使用してAndroidアプリを開発しています。そのため、FirebaseAuthを使用したいと思います。次の要件があります。

  • Facebookを使用して登録/ログイン
  • メール/パスワードで登録/ログイン
  • 電話番号/パスワードを使用して登録/ログイン

最初の2つはOKです。基本的な チュートリアル に従いました。ただし、ここでは電話番号/パスワードが問題になります。 Firebaseはこのための電話番号/ SMSトークン(電話認証と呼ばれます)のみをサポートしていますが、私の場合については言及されていません。 Firebaseをハッキングして、Auth'database 'の代わりにそのリアルタイムデータベースを使用したくありません。これを達成するためのより良い方法はありますか?

ありがとうございました。

6
Tom11

Firebase電話認証はOTP(ワンタイムパスワード)を使用しています。これにより、ユーザーがパスワードを覚える手間がなくなります。認証されると、登録されます。 SMSコードはパスワードとして機能します。しかし、それは一度だけです。通常、ユーザーは、パスワードを覚えておく必要がないような動作を好みます。それでも希望どおりの方法を探している場合は、このリンクを参照して、カスタム認証方法を作成してください。 https://firebase.google.com/docs/auth/Android/custom-auth

3
Malik Ahsan

ユーザーの電子メールと電話の両方があり、Admin SDKを使用できる場合は、ユーザーの電話番号をユーザーの電子メールに交換し、バックグラウンドで電子メールとパスワードを使用してログインできます。

このようなもの(node.js)

admin.auth().getUserByPhoneNumber(phoneNumber)
    .then(user => {
        firebase.auth().signInWithEmailAndPassword(user.email, password);
    });
3
Alvis

同様の問題が発生しました-firebaseauth(email + password)と(phone + otp)を組み合わせて、phone + passwordauthを取得しました-

https://medium.com/@shivampesitbng/firebase-phone-password-auth-in-vue-b94f15b8fb3d

3
user8594799