パスワードリマインダー/パスワードリセットを設定する
会員登録サイトでは、ユーザーが登録したパスワードを忘れた際、パスワードを再発行するためのリマインダー機能が必要になります。
メールに記載されたパスワード変更ページ用URLからユーザー自身が変更できます。また、ユーザー自身でパスワード情報を変更する機能も必要になります。
本チュートリアルでは、パスワードリマインダーとパスワードリセットを実行するエンドポイントを作成する方法を記載します。
パスワードリマインダーの設定
ユーザーがパスワードを忘れてしまった際に、パスワード再発行をするためのリマインダーメールを送信できます。
1. パスワードリマインダー用のエンドポイントを作成する
パスワードリマインダー用のエンドポイントを作成します。 [API]より対象のAPIを選択し、API管理画面より [新しいエンドポイントの追加] をクリックます。
今回は下記設定にてエンドポイントを作成します。

| 設定項目 | 設定 | |
|---|---|---|
| パス | repass | |
| 有効/無効 | 有効 | |
| モデル | カテゴリー | 認証 |
| モデル | Login | |
| オペレーション | reminder | |
| password_reset_page_url | /repass |
設定後、[追加する]をクリックします。

2. パスワードリマインダーメール送信する
次に、作成したエンドポイントの実装内容をSwagger UIを利用して確認します。
API画面より、[Swagger UI]をクリックします。

Swagger UI画面が表示されるので、先ほど作成したエンドポイントをクリックします。

[Try it out]をクリックします。

テキストエリアのメールアドレスに、サイトに登録されているユーザーのメールアドレスを記入し、[Execute]をクリックします。

レスポンスコード:200でデータがレスポンスされることを確認できました。

メールも送信されていることが確認できます。

パスワード再設定時に利用するので、パスワード設定画面の「?token=」以降の文字と、仮パスワードはコピーしておいてください。
なお、ユーザー登録されていないメールアドレスを記入すると、エラーが表示されます。

3. パスワード再設定を行う
次に、メールで送られてきた内容をもとにパスワード再設定します。 同じSwagger UI画面の「Request body」を下記のように修正します。
{
"token": "*****",
"temp_pwd": "*****",
"login_pwd": "*****"
}
| 項目 | 値 |
|---|---|
| token | メールに記載されているtoken (「?token=」以降の文字) |
| temp_pwd | メールに記載されている仮パスワード |
| login_pwd | 新パスワード |
記載したら[Execute]をクリックします。

レスポンスコード:200でデータがレスポンスされることを確認できました。

以上でパスワードリマインダーの設定と、Swagger UIでの確認、パスワード再設定方法を完了します。
パスワードリセットの設定
ユーザーにてパスワード再設定をする際に利用します。
1. パスワードリセット用のエンドポイントを作成する
パスワードリセット用のエンドポイントを作成します。 [API]より対象のAPIを選択し、API管理画面より [新しいエンドポイントの追加] をクリックます。

今回は下記設定にてエンドポイントを作成します。

| 設定項目 | 設定 | |
|---|---|---|
| パス | password_reset | |
| 有効/無効 | 有効 | |
| モデル | カテゴリー | 認証 |
| モデル | Login | |
| オペレーション | reset_password |
設定後、[追加する]をクリックします。

2. パスワードリセットを行う
次に、作成したエンドポイントを利用してパスワードリセットを実行します。今回はSwagger UIを利用して確認します。
API画面より、[Swagger UI]をクリックします。

Swagger UI画面が表示されるので、先ほど作成したエンドポイントをクリックします。

[Try it out]をクリックします。

テキストエリアに下記記入します。
| 項目 | 値 |
|---|---|
| login_id | ユーザーのメールアドレス |
| current_password | 現在のパスワード |
| new_password | 新しいパスワード |
記入したら、[Execute]をクリックします。

レスポンスコード:200でデータがレスポンスされることを確認できました。

なお、ユーザー登録されていないメールアドレスを記入すると、エラーが表示されます。

以上でパスワードリセットの設定と、Swagger UIでの確認方法を完了します。
サポート
お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。