ログインとアクセストークン

作成済みのユーザーにログインすると、Kii Cloud はアクセストークンを発行します。また、仮ユーザーを使用する場合にも、仮ユーザーの作成と同時にアクセストークンが発行されます。

ログイン状態で API を実行する際は、常にアクセストークンが Kii Cloud に渡されるため、Kii Cloud では操作元のユーザーを識別できます。

アクセストークンの使用

モバイルアプリは Kii Cloud SDK を通して Kii Cloud にアクセスしています。SDK から Kii Cloud へのリクエストは、REST API として公開されている API 仕様に基づいて行われます。

ユーザー名とパスワードによってユーザーがログインすると、そのユーザーの権限でアクセスするアクセストークンが Kii Cloud から発行されます。

後続の REST API のリクエストでは、HTTPS のヘッダーにアクセストークンを指定します。これにより、操作元のユーザーが特定され、そのユーザーの権限で処理を行うことができます。

上記の例では、ユーザーのログイン後に API を 2 回呼び出す際のシーケンスを示しています。

  1. 初めにユーザー ID aaaa とパスワード bbbb で認証を行い、レスポンスでアクセストークン 9nM5Nzu-NXLle を受け取ります(実際のアクセストークンはもう少し長い文字列です)。

  2. ユーザー aaaa の権限で機能を実行する際、アクセストークン 9nM5Nzu-NXLle を指定して API を実行します。

  3. 同様に別の機能を実行します。

Kii Cloud SDK を使用する際、アクセストークンは SDK の背後に隠されているため、機能を利用する際には意識する必要がありません。Kii Cloud SDK では「カレントユーザー」としてログイン中のユーザーを識別します。

Kii Cloud では、SDK でサポートしているすべての機能が REST API によって公開されています。通常は Kii Cloud SDK から、ほぼすべての機能を利用できますが、アクセストークンを取得して REST API を直接実行することもできます。

ログイン情報の保存と復元

モバイルアプリでのログイン状態を保持できるよう、Kii Cloud SDK では以下の 2 つの方法でアクセストークンを保存できる機能を用意しています。

  • 前回 Kii Cloud SDK から取得したアクセストークンを再設定することで、前回のログイン状態を復元できます。

  • Kii Cloud SDK がログインなどの機能を実行した際、アクセストークンを初めとしたユーザー情報が Shared Preference やキーチェーンに自動保存されます。モバイルアプリの再起動時にその情報を利用してログイン状態を復元できます。

セキュリティ関連の機能

ログインに関連し、以下のセキュリティ関連の機能を利用できます。

  • アクセストークンの有効期限を API や開発者ポータルから設定できます。また、管理者は、開発者ポータルからユーザーを無効化することによって、強制的にアクセストークンを無効にすることもできます。
  • ユーザーは、パスワードの更新やリセットを API によって実行できます。また、管理者は、開発者ポータルからパスワードのリセットを行うことができます。
  • OAuth 2.0 の リフレッシュトークン をサポートしており、一定間隔でアクセストークンを新しいものに更新できます。

この機能の詳細は...