RBAC管理#

RBAC(ロールベースアクセス制御)管理では、スーパー管理者がきめ細かい権限を持つロールを定義し、ユーザーに割り当てることができます。RBACを使用すると、Backend.AIシステム全体で特定のユーザーがさまざまなリソースに対して実行できる操作を制御できます。

RBAC管理ページにアクセスするには、サイドバーメニューの管理者設定セクションでRBAC管理をクリックします。

図 21.1

ロール一覧#

ロール一覧ページでは、すべてのロールがテーブル形式で表示されます。ページ上部のコントロールを使用して、ロールのフィルタリング、検索、ソートができます。

  • ステータスフィルター: アクティブ非アクティブのロールを切り替えるセグメントコントロールです。デフォルトではアクティブが選択されています。
  • 名前検索: 名前でロールを検索したり、ソース(システムまたはカスタム)でフィルタリングできるプロパティフィルターです。フィルター入力は選択したプロパティに合わせて切り替わります。例えば ソース フィルターは利用可能な値(システム / カスタム)を選択式の入力として表示し、名前 フィルターは自由入力のテキストボックスを表示します。
  • ロールを作成: 新しいカスタムロールを作成するボタンです。

テーブルには以下の列が表示されます:

  • ロール名: ロールの名前です。名前をクリックするとロール詳細パネルが開きます。
  • 説明: ロールの目的に関する簡単な説明です。
  • スコープタイプ: ロールに最初に割り当てられたスコープのタイプです。ロールに複数のスコープが割り当てられている場合は +N 表示が一緒に表示されます。
  • スコープID: ロールに最初に割り当てられたスコープの生IDです。複数のスコープが割り当てられている場合は +N 表示が一緒に表示されます。
  • ソース: ロールがシステム(事前定義)かカスタム(ユーザー作成)かを示します。
  • 自動割り当て: ロールが登録されているスコープにユーザーが追加された際に、そのロールが自動的に割り当てられるかどうかを示します。自動割り当てが有効な場合はアクティブ、無効な場合は非アクティブと表示されます。
  • 作成日時: ロールが作成された日時です。
  • 更新日時: ロールが最後に変更された日時です。

システムロールとカスタムロール#

ロールは2つのソースタイプに分類されます:

  • システム: 自動生成されるロールです。名前や説明は編集できませんが、ユーザーの割り当てと権限を管理できます。
  • カスタム: スーパー管理者が作成したロールです。名前、説明、割り当て、スコープ、権限など、すべての項目を編集できます。

ロールの作成#

ロールを作成する際には、まずスコープを事前に定義する必要があります。スコープはロールを特定のリソースエンティティ(ドメイン、プロジェクト、ユーザーなど)にバインドし、後で追加するすべての権限がここで定義したスコープ内でのみ動作するように制限します。

新しいカスタムロールを作成するには:

  1. ロール一覧ページの右上にあるロールを作成ボタンをクリックします
  2. 作成モーダルで以下のフィールドを入力します:
    • ロール名(必須): 一意のロール名を入力します
    • 説明(任意): ロールの目的に関する説明を入力します
    • 自動割り当て(任意): 有効にすると、ロールが登録されているスコープにユーザーが追加された際に、そのロールが自動的に付与されます。デフォルトは無効です。
    • スコープタイプ / 対象(必須、1つ以上): 各スコープ行でスコープタイプを選択し、そのスコープタイプ内の特定の対象を選択します。追加ボタンでスコープ行を追加したり、削除アイコンで行を削除できます。少なくとも1つのスコープを追加する必要があります。
  3. OKをクリックしてロールを作成します

図 21.2

情報

ロール作成時に設定するスコープタイプ対象は、それ自体で権限を付与するものではありません。代わりに、後でこのロールに権限を追加する際に選択できるスコープタイプ / 対象の候補をあらかじめ定義します。つまり、ロール作成の段階では、このロールの権限が取り得るスコープタイプと対象の範囲をあらかじめ限定するものであり、各権限はここで定義したスコープタイプと対象の範囲内でのみ設定できます。

警告

スコープはロール作成時に定義され、作成後はロール詳細パネルから編集できません。ロールを作成する前にスコープを慎重に計画してください。

ロール詳細の表示#

ロールの詳細情報を表示するには、テーブルでロール名をクリックします。ページの右側に詳細パネルが開きます。

パネルのヘッダーにはロール名が表示され、カスタムロールの場合は編集ボタンが提供されます。詳細セクションには以下のメタデータが表示されます:

  • ソース: システムまたはカスタム
  • ステータス: アクティブまたは非アクティブ
  • 自動割り当て: 自動割り当てがアクティブか非アクティブかを示します。アクティブの場合、登録されているスコープのいずれかに追加されたユーザーに対して、ロールが自動的に付与されます。
  • 作成日時: 作成タイムスタンプ
  • 更新日時: 最終変更タイムスタンプ
  • 説明: ロールの説明

メタデータの下にはスコープ権限ロール割り当ての3つのタブがあります。

図 21.3

ロールの編集#

カスタムロールの名前、説明、または自動割り当て設定を編集するには:

  1. テーブルでロール名をクリックして詳細パネルを開きます
  2. パネルヘッダーの編集ボタン(鉛筆アイコン)をクリックします
  3. 編集モーダルで以下のフィールドを変更します:
    • ロール名: ロールの名前
    • 説明: ロールの目的に関する説明
    • 自動割り当て: 有効にすると、ロールが登録されているスコープにユーザーが追加された際に、そのロールが自動的に付与されます。
  4. OKをクリックして変更を保存します

図 21.4

注記

編集ボタンはカスタムロールでのみ利用可能です。システムロールの名前や説明は変更できません。また、どちらの場合もロール作成後にスコープを変更することはできません。

ロールのスコープ表示#

ロール詳細パネルのスコープタブには、ロール作成時に割り当てられたスコープエントリが一覧表示されます。各エントリは、このロールの権限が参照できる対象の集合を制限します。

図 21.5

テーブルには以下の列が表示されます:

  • スコープタイプ: スコープエントリのタイプです(例: ドメイン、プロジェクト、ユーザー)。
  • 対象: スコープ対象の表示名です(例: ドメイン名、プロジェクト名、ユーザーのメールアドレス)。
  • スコープID: スコープ対象のUUIDです。

上部のフィルターコントロールを使用して、スコープタイプでエントリを絞り込むことができます。

注記

このタブではスコープは読み取り専用です。ロールのスコープを変更するには、目的のスコープを持つ新しいロールを作成する必要があります。

権限の管理#

ロール詳細パネルの権限タブでは、ロールに設定されたきめ細かい権限を確認できます。

図 21.6

権限について#

各権限は4つの構成要素で構成されています:

  • スコープタイプ: 権限が適用される有効範囲(例: ドメイン、プロジェクト、ユーザー)
  • 対象: 有効範囲内の特定のエンティティ(例: 特定のドメイン名、特定のプロジェクト)
  • 権限タイプ: 権限の有効範囲内で操作が実行される対象です。
  • 権限: 権限タイプに対して許可される操作です。選択した権限タイプに応じて、有効な操作のみが表示されます。操作は2つのカテゴリに分類されます:
    • 直接実行: 作成、読み取り、更新、削除、完全削除
    • 他ユーザーへ委任: 全権限委任、読み取り権限委任、更新権限委任、削除権限委任、完全削除権限委任
情報

各権限のスコープタイプ / 対象の組み合わせは、ロールのスコープエントリから継承されます。権限を追加する際は、ロール作成時に定義されたスコープからのみ選択できます。ロールの適用範囲を広げるには、追加のスコープを持つ新しいロールを作成する必要があります。

権限設定の例#

以下は、4つの構成要素がどのように連携するかを理解するための一般的な権限設定例です。スコープタイプ / 対象列は、権限が再利用するロールレベルのスコープを示しています。

シナリオ スコープタイプ / 対象 権限タイプ 権限
特定プロジェクトでストレージフォルダの作成を許可 プロジェクト / my-project フォルダ 作成
特定のドメイン内のすべてのセッションの表示を許可 ドメイン / default セッション 読み取り
特定のドメイン内のモデルサービスの管理を許可 ドメイン / default モデルサービス 作成、読み取り、更新
特定のドメイン内のコンテナイメージの削除を許可 ドメイン / default イメージ 削除

権限の追加#

  1. ロール詳細パネルを開き、権限タブを選択します
  2. 権限を追加ボタンをクリックします
  3. モーダルで以下のフィールドを入力します:
    • スコープタイプ / 対象: ロールに割り当てられたスコープエントリの1つを選択します。ドロップダウンには、操作可能なエンティティが少なくとも1つ存在するスコープのみが表示されます。対象は生のUUIDではなく、解決済みのローカライズ表示名(ドメインやプロジェクトの表示名など)で表示されるため、どのスコープか一目で確認できます。
    • 権限タイプ: エンティティタイプを選択します。選択したスコープタイプに有効なタイプのみ表示されます。権限タイプのラベル(例: ロール割り当て)もUIの言語に合わせてローカライズされます。
    • 権限: 操作を選択します(例: 作成、読み取り、更新、削除、完全削除、または委任操作)
  4. 追加をクリックして権限を作成します

図 21.7

権限の削除#

  1. 権限タブで、削除する権限の横にある権限を削除ボタンをクリックします
  2. ボタンに連動した小さな確認ポップアップが表示されます。OKをクリックして削除するか、キャンセルで閉じます。

ロールから権限を削除しても、ロール自体・スコープ・ユーザー割り当ては保持され、ロールの権限セットから切り離されるだけです。同じ権限はこのタブから後で再度追加できるため、この操作は元に戻せる操作として扱われ、名前を入力して確認するモーダルではなく軽量なポップアップ確認を使用します。

ユーザー割り当ての管理#

ロール詳細パネルのロール割り当てタブでは、ロールに割り当てられているユーザーを確認できます。

図 21.8

ロールにユーザーを追加#

  1. ロール詳細パネルを開き、ロール割り当てタブを選択します
  2. ユーザーを追加ボタンをクリックします
  3. モーダルでメールアドレスまたは名前でユーザーを検索します
  4. チェックボックスを使用して1人以上のユーザーを選択します
  5. 割り当てをクリックして選択したユーザーをロールに割り当てます

図 21.9

ユーザーの追加は一括操作です。一度に複数のユーザーを選択して、まとめて割り当てることができます。

ロールからユーザーを解除#

1人のユーザーを解除することも、複数のユーザーを一度に解除することもできます。

1人のユーザーを解除するには:

  1. ロール割り当てタブで、ユーザー行にマウスを合わせ、ユーザーの横にある解除(ゴミ箱)アイコンをクリックします。
  2. ロールからユーザーを外す確認モーダルが開きます。一覧に表示されたユーザーを確認し、ロールからユーザーを外すをクリックして確定するか、キャンセルで閉じます。

図 21.10

複数のユーザーを一度に解除するには:

  1. ロール割り当てタブで、チェックボックスを使用して解除するユーザーを選択します。解除コントロールの横に、選択された行数を示す選択件数ラベルが表示されます。そのラベルの選択解除コントロールを使用して、すべての行の選択を解除できます。
  2. 1つ以上の行が選択されると表示される一括ロールからユーザーを外すボタン(ゴミ箱アイコン)をクリックします。
  3. ロールからユーザーを外す確認モーダルで、一覧に表示されたユーザーを確認し、ロールからユーザーを外すをクリックして確定するか、キャンセルで閉じます。

図 21.11

ユーザーを解除すると、そのユーザーのこのロールへの割り当てだけが取り除かれ、ロール自体や他の割り当ては保持されます。

注記

ロール割り当ての解除は、ロール割り当てタブからユーザーを再度追加することで元に戻せます。

プロジェクト管理者権限の付与#

プロジェクトを作成すると、project-<project_id>-adminという専用のロールも併せて作成されます。ここで<project_id>は対象プロジェクトのUUIDです。このロールにユーザーを割り当てると、そのユーザーには該当プロジェクトに対するプロジェクト管理者権限が付与されます。これにより、システム全体のスーパー管理者権限を持たなくても、そのプロジェクトのユーザー、セッション、デプロイ、ストレージフォルダを管理できるようになります。

図 21.12

ユーザーにプロジェクト管理者権限を付与するには:

  1. ロール一覧を開き、対象プロジェクトのproject-<project_id>-adminロールを探します。プロパティフィルターを使用してロール名で検索できます(例: project-と入力して一覧を絞り込みます)。
  2. ロール名をクリックしてロール詳細画面を開きます。
  3. そのロールに対してロールにユーザーを追加の手順に従ってユーザーを割り当てます。

図 21.13

ユーザーには即座にプロジェクト管理者権限が付与されます。次にヘッダーのプロジェクトドロップダウンを開くと、対応するプロジェクトの横にプロジェクト管理者バッジが表示され、プロジェクト管理者機能章で説明されているプロジェクト管理者専用のサイドバー項目も表示されます。

プロジェクト管理者権限を取り消すには、同じproject-<project_id>-adminロールに対してロールからユーザーを解除の手順を実行します。

© 2026 Lablup Inc. · Backend.AI WebUI Docs