firebase

FirebaseのE-mail認証でアドレスが正しいことを確認する

  • このエントリーをはてなブックマークに追加
  • LINEで送る
firebase ロゴ

Firebaseの認証機能を使えば、面倒なログイン回りの処理がほとんど省略できて幸せになれます。
ほとんどの処理がかなり簡単に使えるのですが、1つ、E-mailが正しいことを確認する処理が若干マニュアルではわかりにくいので備忘録として残します

currentUser.emailVerified

Firebaseでは、E-mailでアカウントを作成した場合、すぐにアカウントが作成されてそのまま利用可能です。しかしユーザが本当に正しいメールアドレスを入力している保証はありません。
ちゃんと確認のメールを送って、それが届いて、メール本文中の確認用リンクを踏んで初めて「正しい」と確認できるのです。

ありがたいことにFireBaseではこの確認作業もあらかじめ用意されているので、いちいち自前で用意しなくても済みます。

ユーザがログインした際、firebase.auth().currentUserでログインユーザの情報を取得できます。
同様に、firebase.auth().currentUser.emailVerifiedでログイン中のユーザが入力したメールアドレスが認証済みか否かを取得できます。これはBoolで帰ってきます。

なお、googleアカウントによるログインでは、.currentUser.emailVerifiedは常にTrueを返すようです。

認証が終わってないなら認証メールを投げる

ユーザがアカウントを作成したときに入力したメールアドレスは、
firebase.auth().currentUser.emailで取得できます。
firebase.auth().currentUser.emailVerifiedがFalseだったときに、firebase.auth().currentUser.emailのメールアドレス宛に確認メールを投げます。
確認メールは
firebase.auth().currentUser.sendEmailVerification()で送信できます。
メールアドレスは特に指定しなくても、勝手にログインユーザ宛に送ってくれます。

一応公式サイトリンク

  • このエントリーをはてなブックマークに追加
  • LINEで送る

ReinはVue.js + Firebaseで作られました

サロン向けお客様対応管理システム Reinは
Vue.js(Quasar Framework)とFirebaseを使って作成されました
サーバレスでも意外と何とかなるものです

Rein