パスワードリセット

ユーザーがパスワードを忘れてしまった場合、パスワードをリセットできます。

パスワードリセットは、ログイン状態でなくても実行できます。パスワードリセットが実行されると、以前のパスワードでログインしていたユーザーのアクセストークンは無効化され、新たなパスワードを使った再ログインが必要な状態となります。

リセット後の新パスワード

パスワードリセット後に有効となる新パスワードは、以下のいずれかの方法で決まります。

  • Kii Cloud に自動生成させる(デフォルト動作)
  • ユーザーに指定させる

新パスワードの決定方法は開発者ポータルで設定します。新パスワードの指定方法の設定 をご覧ください。

パスワードのリセット

パスワードのリセットは、メールまたは SMS を使って行います。SMS を利用する場合、パスワードリセット用リンクを送信する方法と、パスワードリセット用の PIN コードを送信する方法が選択可能です。

メールを利用

次のようにリクエストを送信します。なお、以下の例ではユーザーを認証済みメールアドレスで指定していますが、ユーザー ID や認証済み電話番号で指定することもできます。

curl -v -X POST \
  -H "Authorization: Basic {BASE64_ENCODED_APPID_AND_APPKEY}" \
  -H "Content-Type: application/vnd.kii.ResetPasswordRequest+json" \
  "https://api-jp.kii.com/api/apps/{APP_ID}/users/EMAIL:{EMAIL_ADDRESS}/password/request-reset" \
  -d '{
    "notificationMethod": "EMAIL"
  }'

パスワードリセットのリクエストは Basic 認証 を使って行います。{BASE64_ENCODED_APPID_AND_APPKEY} には AppID と任意の値をコロン(:) で連結した文字列を Base64 エンコードしたものを入れてください。

上記リクエストが処理されると、ユーザーのメールアドレスにパスワードリセット用 URL リンク付メールが送信されます。メールアドレスは認証済みである必要があります。認証済みでない場合はこの機能を使用できません。

パスワードリセットの際に送信されるメールの内容はカスタマイズ可能です。カスタマイズは開発者ポータルで行います。カスタマイズ方法は メール/SMS テンプレートのカスタマイズ をご覧ください。

送信されたメール内のリンクをクリックした際の挙動は、開発者ポータルで設定した新パスワード指定方法により異なります。

  • Kii Cloud に自動付与させる設定の場合:パスワードがリセットされ、自動生成された新パスワードがメールでユーザーに通知されます。

  • ユーザーに指定させる設定の場合:新パスワード入力用のページが表示されます。ユーザーが新パスワードを入力すると、今までのパスワードはリセットされ、指定した新パスワードが有効になります。

SMS を利用(リンクを送信)

次のようにリクエストを送信します。なお、以下の例ではユーザーの ID として認証済み電話番号を利用していますが、ユーザー ID や認証済みメールアドレスを利用することもできます。また smsResetMethod フィールドは省略可能です(省略した場合はデフォルトで "URL" が適用されます)。

curl -v -X POST \
  -H "Authorization: Basic {BASE64_ENCODED_APPID_AND_APPKEY}" \
  -H "Content-Type: application/vnd.kii.ResetPasswordRequest+json" \
  "https://api-jp.kii.com/api/apps/{APP_ID}/users/PHONE:{PHONE_NUMBER}/password/request-reset" \
  -d '{
    "notificationMethod": "SMS",
    "smsResetMethod": "URL"
  }'

パスワードリセットのリクエストは Basic 認証 を使って行います。{BASE64_ENCODED_APPID_AND_APPKEY} には AppID と任意の値をコロン(:) で連結した文字列を Base64 エンコードしたものを入れてください。

上記リクエストが処理されると、ユーザーの電話番号にパスワードリセット用 URL リンク付 SMS メッセージが送信されます。電話番号は認証済みである必要があります。認証済みでない場合はこの機能を使用できません。

パスワードリセットの際に送信される SMS の内容はカスタマイズ可能です。カスタマイズは開発者ポータルで行います。カスタマイズ方法は メール/SMS テンプレートのカスタマイズ をご覧ください。

送信された SMS 内のリンクをクリックした際の挙動は、開発者ポータルで設定した新パスワード指定方法により異なります。

  • Kii Cloud に自動付与させる設定の場合:パスワードがリセットされ、自動生成されたパスワードが SMS でユーザーに通知されます。

  • ユーザーに指定させる設定の場合:新パスワード入力用のページが表示されます。ユーザーが新パスワードを入力すると、今までのパスワードはリセットされ、指定した新パスワードが有効になります。

SMS を利用(PIN コードを送信)

次のようにリクエストを送信します。なお、以下の例ではユーザーの ID として認証済み電話番号を利用していますが、ユーザー ID や認証済みメールアドレスを利用することもできます。

curl -v -X POST \
  -H "Authorization: Basic {BASE64_ENCODED_APPID_AND_APPKEY}" \
  -H "Content-Type: application/vnd.kii.ResetPasswordRequest+json" \
  "https://api-jp.kii.com/api/apps/{APP_ID}/users/PHONE:{PHONE_NUMBER}/password/request-reset" \
  -d '{
    "notificationMethod": "SMS",
    "smsResetMethod": "PIN"
  }'

PIN コードのリクエストは Basic 認証 を使って行います。{BASE64_ENCODED_APPID_AND_APPKEY} には AppID と任意の値をコロン(:) で連結した文字列を Base64 エンコードしたものを入れてください。

上記リクエストが処理されると、ユーザーの電話番号にパスワードリセット用 PIN コード付き SMS メッセージが送信されます。電話番号は認証済みである必要があります。認証済みでない場合はこの機能を使用できません。

次に、入手した PIN コードを以下のように送信してパスワードをリセットします。

curl -v -X POST \
  -H "Authorization: Basic {BASE64_ENCODED_APPID_AND_APPKEY}" \
  -H "Content-Type: application/vnd.kii.CompletePasswordResetRequest+json" \
  "https://api-jp.kii.com/api/apps/{APP_ID}/users/PHONE:{PHONE_NUMBER}/password/complete-reset" \
  -d '{
    "pinCode": "123456",
    "newPassword": "new_password_00"
  }'

パスワードリセットのリクエストは Basic 認証 を使って行います。{BASE64_ENCODED_APPID_AND_APPKEY} には AppID と任意の値をコロン(:) で連結した文字列を Base64 エンコードしたものを入れてください。

PIN コードの送信方法と送信後の挙動は、開発者ポータルで設定した新パスワード指定方法により異なります。

  • Kii Cloud に自動付与させる設定の場合:PIN コードのみ送信します(新パスワードを送信した場合、値は無視されます)。リクエストが処理されるとパスワードはリセットされ、自動生成されたパスワードが SMS でユーザーに通知されます。

  • ユーザーに指定させる設定の場合:PIN コードとともに、新パスワードを送信します。リクエストが処理されると今までのパスワードはリセットされ、指定した新パスワードが有効になります。