権限管理
権限モデルの全体像
InfiniCloud® AI の権限は、次の 2 層で構成されています。
- 機能としてのDynamic RBAC(ロール/権限キー)
- 「どの設定画面を開けるか」「どの種類の操作ができるか」を決める
- 例:ユーザー管理画面の表示、ロール作成、ログ削除 など
- 知能ドメイン毎のACL(各知能ドメイン単位のアクセス制御)
- 「どのドメインに対して、どこまで触れるか」を決める
- 例:知能ドメインに対して、利用可能か、知識追加まで可能か、ACL 変更まで可能かなどを決めるもの。
権限キー毎の機能
ここでは、代表的な「権限キー」と、その権限に紐付く機能を解説します。機能は事実上、Web UI 上で何ができるのか上げています。
設定画面・ドメイン操作関連
| 権限キー | 機能(UI 上の操作) |
|---|---|
| options.view | 左下の「設定」ボタンでオプションウインドウを開けるかどうか? ゲストユーザーはこの機能が無効になっています。 たとえばDefaultUserのロールからこの機能を落とすと、新規ユーザー作成後も、一般ユーザーはオプション画面を開くことができません。 |
| domains.create | 新しい知能ドメインを作成する |
| domains.transfer_owner | 知能ドメインの所有者(owner)を別ユーザーに変更(移譲)できる |
| domains.delete | 知能ドメインを削除できる(ACL / 依存関係に応じて制約あり) |
※作成した個々の知能ドメインのアクセス権限は、それ毎にACLを設定します。
タスクログ関連
| 権限キー | 機能 |
|---|---|
| logs.view.list | 「タスクログ」タブが表示され、ジョブのログ一覧を閲覧できる |
| logs.view.detail | 各ジョブの詳細ログを参照できる |
| logs.delete | 完了済みタスクのログを削除できる ※監査ログは、デフォルトでは、サーバー管理者のみが参照できるディレクトリに保存されています。 |
ユーザー/グループ管理関連
| 権限キー | 機能 |
|---|---|
| users.view | 「ユーザーとグループ管理」タブを開き、一覧を閲覧できる。 この権限がないと「ユーザーとグループ管理」というメニューが表示されない。 |
| users.manage.add_to_group | ユーザーをグループに追加・削除できる |
| users.manage.freeze | ユーザーアカウントを凍結(ログイン不可)にできる |
| users.manage.delete | ユーザーアカウントを削除できる |
| groups.create | 新しいグループを作成できる |
| groups.edit | グループ名・説明・所属ユーザーを変更できる |
| groups.assign_role | グループにロールを割り当て/解除できる |
ロール・権限管理関連
| 権限キー(例) | できること |
|---|---|
| role.view | 「ロールと権限管理」タブを開き、既存ロールの定義を閲覧できる。 この権限がないと「ロールと権限管理」のメニューが表示されない。 |
| role.create | 新しいロールを作成し、権限キーの組み合わせを定義できる |
| role.edit | 既存のロールの説明や権限セットを編集できる(システムロール除く) |
| role.delete | カスタムロールを削除できる(利用状況により制約あり) |
テナント管理関連(導入形態による)
| 権限キー(例) | できること |
|---|---|
| tenant.view | 「テナント管理」タブを開き、テナント一覧を閲覧できる。 この権限がないと「テナント管理」のメニューが表示されない。 なお、サーバー管理者がconfig.iniでテナント機能を無効にしていた場合は、このメニューが動作しない。 |
| tenant.create | 新しいテナントと、その配下のルートグループを作成できる |
| tenant.edit | テナント名・説明などを変更できる |
| tenant.delete | テナントを削除できる(利用状況により制約あり) |
ロール(役割)と想定ユースケース
ロールは「よく使う権限キーのセット」に名前を付けて管理しやすくする仕組みです。
代表的なロール例
| ロール名 | 主な権限のイメージ | 想定する利用者 |
|---|---|---|
| admin | ほぼ全ての権限キーを含む | システム全体の管理者。ユーザー/グループ/ロール/テナント/ドメインを統括 ※削除はできません |
| domain_tutor | ドメイン作成・ACL 調整・JSONL 編集・ログ閲覧など | 部門ごとの「知能ドメイン」運用担当者 |
| user | 設定画面の閲覧(限定的)、ドメイン利用、ログ参照 など | 一般ユーザー(社内利用者全般) ※アカウント作成直後のユーザーのグループが、このロールを持ちます。 |
| viewer | ログ閲覧、ユーザー/グループの参照のみ | 監査担当、情報システム部門の閲覧用アカウント |
admin ロールはシステムロールとして、権限セットが固定されます。通常、編集や削除はできません。
ロール運用の考え方
まず、ロールとグループは別の概念です。
ロールは、権限キーを持つセットであり、ロールに権限キーが与えられています。例えばadminはグループではなく、管理能力を持つロールということになります。
実際に管理能力を持つadminロールが機能を発揮するためには、ユーザーグループAdminに対して、ロールadminがバインドされます。
そして、ユーザーはグループに属すため、結果的に、ユーザーに管理権限を持つという枠組みです。
この枠組みにより、想定している権限セットと、ユーザーのグループを割ることができ、フレキシブルにRBACを設定することが可能になっています。
デフォルトのロールと権限キー対応表
実際の環境に合わせて、ロール名・権限キーは適宜読み替えてください。
| ロール名 | 主な権限キー例 |
|---|---|
| admin | options.view, domains.*, logs.view.*, logs.delete, users.view, users.manage.*, groups.*, role.*, tenant.* などほぼ全て |
| domain_tutor | options.view, domains.create, domains.transfer_owner, logs.view.list, logs.view.detail, users.view, groups.assign_role, role.view, role.create, role.edit, role.delete など |
| user | options.view, logs.view.list, logs.view.detail, users.view など、閲覧中心 |
| viewer | logs.view.list, logs.view.detail, users.viewなど、参照専用 |
この表をベースに、自社のポリシに合わせたロール定義・命名・説明文を追加していくことで、ユーザーに「自分のアカウントで何ができるのか」をわかりやすく伝えることができます。