第7章 Red Hat Developer Hub でのロールベースアクセス制御 (RBAC) アクセスの委譲
エンタープライズのお客様には、ロールベースアクセス制御 (RBAC) の管理権限を組織内の他の担当者に委譲する機能が必要です。このシナリオでは、管理者は、チームリードなど特定のユーザーに対して RBAC プラグインへのアクセス権を付与できます。各チームリードは、割り当てられた範囲外のパーミッションを表示したり制御したりすることなく、それぞれのチームまたは部門内のユーザーのみのパーミッションを管理できます。このアプローチにより、チームリードは自分のチームのアクセスやパーミッションを独立して管理できる一方で、管理者は全体を統括することができます。
Red Hat Developer Hub では、RBAC プラグインのマルチテナント機能、具体的には IS_OWNER 条件ルールを使用して RBAC アクセスを委譲できます。優先するワークフローと自動化のレベルに応じて、Web UI または RBAC バックエンド API のいずれかを使用できます。
- Web UI を使用して、直感的なインターフェイスを通じてロールの作成、ユーザーまたはグループの割り当て、パーミッションの定義、所有権条件の適用を行います。
- より柔軟で自動化可能なアプローチには API を使用します。この場合、認証された curl リクエストを使用してロール、パーミッション、所有権の条件をプログラムで管理できます。
いずれかの方法で RBAC アクセスを委譲すると、次の結果が期待できます。
- チームリードは、チームの RBAC 設定を個別に管理できます。
- 他のユーザーまたはチームのパーミッションの表示は制限されます。
- 管理者は、チーム固有のアクセスを委譲しながら、全体的な制御を維持します。
前提条件
- RHDH インスタンスが、RBAC プラグインがインストールおよび設定された状態で実行されている。
- RHDH への管理者アクセス権がある。
7.1. Web UI を使用して Red Hat Developer Hub で RBAC アクセスを委譲する リンクのコピーリンクがクリップボードにコピーされました!
Web UI を使用して、Red Hat Developer Hub で RBAC アクセスを委譲できます。
手順
- 管理者の認証情報を使用して RHDH インスタンスにログインします。
-
Administration
RBAC に移動します。 -
Create Role をクリックし、
role:default/team_leadなど、チームリードの新しいロールを定義します。 -
Members セクションで、
user:default/team_leadなどのユーザーまたはグループを追加します。 以下のように、チームリードに必要なパーミッションを付与します。
-
policy.entity.create: ポリシーの作成を許可する。 -
catalog-entity:read: カタログへのアクセスを許可する。
-
アクセスを制限するには、次のように 条件 を適用します。
-
IS_OWNERルールを使用して、チームリードが自分が所有するリソースのみを管理できるようにします。
-
- Save をクリックして、ロールを作成し、変更を適用します。
検証
- チームリードとしてログインします。
以下を確認します。
- RBAC UI にアクセスできます。
- チームに関連するユーザーまたはロールのみが表示されます。
- ロールやパーミッションの範囲外へのアクセスは許可されません。