パスワードリセット

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

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

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

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

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

パスワードのリセット

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

メールを利用

第 1 引数に対象ユーザーの ID を指定して resetPasswordWithNotificationMethod メソッドを実行します。第 2 引数には "EMAIL" を指定します。なお、以下の例ではユーザーの ID として認証済みメールアドレスを利用していますが、ユーザー ID や認証済み電話番号を利用することもできます。

  • // Send an email including a link for password reset.
    KiiUser.resetPasswordWithNotificationMethod("user_123456@example.com", "EMAIL", {
      success: function() {
        // Do something.
      },
      failure: function(errorString) {
        // Handle the error.
      }
    });
  • // Send an email including a link for password reset.
    KiiUser.resetPasswordWithNotificationMethod("user_123456@example.com", "EMAIL").then(
      function() {
        // Do something.
      }
    ).catch(
      function(error) {
        // Handle the error.
        var errorString = error.message;
      }
    );

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

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

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

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

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

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

第 1 引数に対象ユーザーの ID を指定して resetPasswordWithNotificationMethod メソッドを実行します。第 2 引数には "SMS" を指定します。なお、以下の例ではユーザーの ID として認証済み電話番号を利用していますが、ユーザー ID や認証済みメールアドレスを利用することもできます。

  • // Send an SMS message including a link for password reset.
    KiiUser.resetPasswordWithNotificationMethod("+819001234567", "SMS", {
      success: function() {
        // Do something.
      },
      failure: function(errorString) {
        // Handle the error.
      }
    });
  • // Send an SMS message including a link for password reset.
    KiiUser.resetPasswordWithNotificationMethod("+819001234567", "SMS").then(
      function() {
        // Do something.
      }
    ).catch(
      function(error) {
        // Handle the error.
        var errorString = error.message;
      }
    );

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

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

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

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

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

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

第 1 引数に対象ユーザーの ID を指定して resetPasswordWithNotificationMethod メソッドを実行します。第 2 引数には "SMS_PIN" を指定します。なお、以下の例ではユーザーの ID として認証済み電話番号を利用していますが、ユーザー ID や認証済みメールアドレスを利用することもできます。

  • // Send an SMS message including a PIN code for password reset.
    KiiUser.resetPasswordWithNotificationMethod("+819001234567", "SMS_PIN", {
      success: function() {
        // Do something.
      },
      failure: function(errorString) {
        // Handle the error.
      }
    });
  • // Send an SMS message including a PIN code for password reset.
    KiiUser.resetPasswordWithNotificationMethod("+819001234567", "SMS_PIN").then(
      function() {
        // Do something.
      }
    ).catch(
      function(error) {
        // Handle the error.
        var errorString = error.message;
      }
    );

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

次に、第 1 引数に対象ユーザーの ID、第 2 引数に入手した PIN コードを指定して completeResetPassword メソッドを実行し、パスワードをリセットします。

  • // Reset the password.
    KiiUser.completeResetPassword("+819001234567", "123456", "new_password_00", {
      success: function() {
        // Do something.
      },
      failure: function(errorString) {
        // Handle the error.
      }
    });
  • // Reset the password.
    KiiUser.completeResetPassword("+819001234567", "123456", "new_password_00").then(
      function() {
        // Do something.
      }
    ).catch(
      function(error) {
        // Handle the error.
        var errorString = error.message;
      }
    );

completeResetPassword メソッドの実行方法およびメソッド実行後の挙動は、開発者ポータルで設定した新パスワード指定方法により異なります。

  • Kii Cloud に自動付与させる設定の場合:第 3 引数には null を指定します(null ではない場合、値は無視されます)。メソッドの実行が成功するとパスワードはリセットされ、自動生成されたパスワードが SMS でユーザーに通知されます。

  • ユーザーに指定させる設定の場合:第 3 引数に新しいパスワードを指定します。メソッドの実行が成功すると今までのパスワードはリセットされ、指定した新パスワードが有効になります。