【Firebase】なんとなく掴めたfirebase authの勘所

研究
Jeremy Bishop at Pexels
この記事は約3分で読めます。

この記事は2年前の記事です。当時の情報、理解に基づいておりますのでご留意ください

追記

拙稿にて解決しました!

【Firebase】firebase authでいまいち理解できていなかった認証周りを再確認する(2)
はじめに拙稿の続き。問題はこの後。ログイン済のアカウントが自身の個人情報をアップデートする場合にアカウントの再認証が求められるのだそうです。この辺を対応します。なお利用するソースコードはこちら。対応...

最初に試したもの

必要要件

firebase firestore とfirebase auth。

基本仕様

  • SNSっぽく会員登録および認証を使う=firebase auth
  • 但しログインしていなくても各アカウントのニックネームとか可視範囲がある=firebase firestore

アカウント登録画面の仕様(追々修正した結果)

  1. メルアド入力
  2. firebase authの機能で認証メール発信
  3. メール内URLからアプリを開いたら、仮パスワードにてアカウントを登録
  4. プロフィール登録画面を強制的に展開するのでパスワードを改めて登録

ハマりどころ

  1. firebaseに慣れておらずユーザ情報とかfirestoreでよくなくね?と作業を進めるも
  2. 本来はauthで認証しないでfirestoreを大公開するのはセキュリティ上あまりオススメしていない
  3. そもそもauthを使わないと認証メールが飛ばせない
  4. そこで後からauthを使うよう修正
  5. ユーザの再認証が解っておらず、結果アカウント登録認証メールは飛んだものの、パスワードの設定やアカウント削除ができない
Firebase でユーザーを管理する

試行錯誤の結果把握できたfirebase authとfirestoreに置いた可視範囲の使い方

  1. まずfirebase authでアカウントをよしなに登録
  2. authで登録したuidをfirestoreのusersコレクションのdocument idにつけるなりして、可視範囲を登録

懸念

ここまで使って思ったのが、先程のユーザの再認証がネックになりうるのではないかと

パスワードを完全に忘れて認証ができない状態に陥ってしまうと、実質何もできない。
だがこのサービスっていかにもパスワード忘れそうなユーザー層な気がw
こんなん悩むの私だけかもしれないが、ほんと悩んだ。

取り敢えずこの正解をなんとか見つけたい。
パスワードを平文で持っちゃ意味ないんだけど、firestoreに持つやつなのか。

まあ誰か解決してる先人がいるかも知れない。ひとまず頭を一瞬切り替えよう。

コメント

タイトルとURLをコピーしました