FJCT_ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

メールアドレス未設定ユーザーのパスワードリセットを行う方法

f:id:mbaasdevrel:20200422135523p:plain

ユーザから来るであろう問い合わせの最たるものはパスワードを忘れてログインできないといったものではないかと思います。mBaaSでも会員管理機能を提供しています。そこでは複数の認証機能が利用できます。

  • ID/パスワード認証
  • メールアドレス/パスワード認証
  • ソーシャルメディア認証
  • 匿名認証

この中でパスワードを忘れて困るのがID/パスワード認証になります。今回は、ユーザからそうした問い合わせが来た際に取れる対応について紹介します。

他の方法は問題ないのか

紹介する前に、他の方法におけるリカバリー方法を紹介します。まずメールアドレス/パスワード認証の場合、パスワードを忘れた人向けのリマインダーメール機能があります。これを使うことでパスワードを再設定可能です。ただしメールアドレスが利用できる状態になっていなければなりません。

ソーシャルメディア認証の場合、パスワードを忘れたとしたらソーシャルメディア側のパスワード復旧機能で再設定可能です。そして匿名認証は元々パスワード設定機能はありません。

ステップ1:メールアドレスを聞く

まずユーザからメールアドレスを聞きます。そのアドレスを会員管理のメールアドレスとして設定します。

この後の動作は2パターンあります。

会員認証設定で確認メールの送信が有効になっている場合

アプリ設定の中で、確認メールを送信する設定になっている場合、入力したアドレスに対してメールが送信されます。そのメールに記載されているURLをクリックすると、メールアドレスがユーザ情報と紐付けられます。

f:id:mbaasdevrel:20200422135448p:plain

これによってメールアドレスを使ったパスワードリセットが可能になります。

会員認証設定で確認メールの送信が有効になっていない場合

確認メール送信が無効になっている場合、ユーザに対してメールは送信されません。そこで、管理画面のREST APIツールを使います。

f:id:mbaasdevrel:20200422135523p:plain

機能の中で「パスワード再発行登録」を選び、メールアドレスとしてユーザからもらったものを入力します。そうするとユーザに対して仮のパスワードと、パスワード再設定用のURLが送られますので、そこから新しいパスワードが設定できます。

まとめ

このようにしてパスワードの再設定が可能です。管理者側で仮パスワードを設定するような手順ではないのでご注意ください。メールアドレスは必須になります。メールアドレスがない場合にはGmailなどで作成してもらう必要があるでしょう。

皆さんのアプリ運用で役立ててください。

中津川 篤司

中津川 篤司

NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。 2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。