連携するアプリケーションが扱う2種類のアカウントと、テナントの分離について。
連携時に扱うアカウントは2種類です。API のレスポンスに含まれるuser.role は、このいずれかの値になります。
| role | 呼び方 | 位置づけ |
|---|---|---|
USER_PRIMARY | オーナー | あなた自身のアカウント。自己登録するとこのロールになります。ユーザーの作成・管理と API キーの発行ができます |
USER_SECONDARY | ユーザー | オーナーが作成するアカウント。あなたのサービスのエンドユーザーにあたります |
オーナーが操作できるのは、自分が作成したユーザーだけです。 他のオーナーが作成したユーザーは、一覧に表示されず、ID を直接指定しても 取得・更新・削除のいずれもできません。API キーを使った場合も同じです。
この境界はデータベースへの問い合わせの時点で適用されるため、 アプリケーション側で絞り込みを実装する必要はありません。
| 操作 | オーナー | ユーザー |
|---|---|---|
| 管理画面へのログイン | ○ | — |
| API 経由の認証 | ○ | ○ |
| ユーザーの作成 | ○ | — |
| ユーザーの編集・停止・削除 | ○ | — |
| API キーの発行・失効 | ○ | — |
| 操作履歴の閲覧(自テナント分) | ○ | — |
| 自分のプロフィール編集 | ○ | — |
| 自分のアイコン・メール・パスワード変更 | ○ | ○ |
| 自分の二段階認証の設定 | ○ | ○ |
| ログイン中の端末の確認・解除 | ○ | ○ |
| 自分のアカウントの削除 | ○ | — |
API キーは発行したアカウントの権限を引き継ぎます。オーナーが発行したキーは、 そのテナントの範囲でのみ動作します。 ただし、キー自身の発行・失効と、発行者のパスワード変更・アカウント削除は キーからは実行できません。
サービス運営側には、障害対応やお問い合わせ対応のための管理アカウントが 別途あります。運営がアカウントに対して行った操作は、 対象・日時・実行者とともにすべて記録され、削除できません。