第1章 ロールベースのアクセス制御 (RBAC) 機能の有効化とアクセス権の付与
ロールベースのアクセス制御 (RBAC) 機能はデフォルトで無効になっています。RBAC プラグインを有効にし、ポリシー管理者が RBAC 機能の使用を開始することを宣言します。
Developer Hub のユーザーとグループのパーミッションポリシーは、パーミッションポリシー管理者が管理します。ロールベースアクセス制御 REST API には、パーミッションポリシー管理者のみアクセスできます。
前提条件
- カスタムの Developer Hub アプリケーション設定を追加 し、その設定を変更するために必要なパーミッションを持っている。
- 認証プロバイダーを有効化している。
手順
RBAC プラグインはインストールされていますが、デフォルトでは無効になっています。
./dynamic-plugins/dist/backstage-community-plugin-rbacプラグインを有効にするには、dynamic-plugins.yamlを次の内容で編集します。dynamic-plugins.yamlフラグメントplugins: - package: ./dynamic-plugins/dist/backstage-community-plugin-rbac disabled: falseRed Hat Developer Hub でのプラグインのインストールと表示 を参照してください。
ポリシー管理者を宣言して、選択した数人の認証済みユーザーが、CSV ファイルを直接変更することなく、REST API または Web UI を使用して RBAC ポリシーを設定できるようにします。パーミッションは、
my-rhdh-app-configconfig map で参照される別の CSV ファイルで指定することも、REST API または Web UI を使用して作成することもできます。<your_policy_administrator_name> などのユーザーをポリシー管理者として宣言するには、
app-config-rhdhなどのカスタム Developer Hub ConfigMap を編集し、次のコードをapp-config.yamlコンテンツに追加します。app-config.yamlフラグメントpermission: enabled: true rbac: admin: users: - name: user:default/<your_policy_administrator_name>インストールされたプラグインによって提供される利用可能なパーミッションを Developer Hub Web UI に表示するには、対応するプラグイン ID を カスタムの Developer Hub 設定ファイル
app-config.yamlに追加します。RBAC UI で利用可能なパーミッションを表示するには、
app-config-rhdhなどのカスタム Developer Hub ConfigMap を編集し、次のコードをapp-config.yamlコンテンツに追加します。app-config.yamlフラグメントpermission: enabled: true rbac: admin: users: - name: user:default/<your_policy_administrator_name> pluginsWithPermission: - catalog - scaffolder - permission
検証
- 既存の Red Hat Developer Hub セッションからサインアウトし、宣言されたポリシー管理者アカウントを使用して再度ログインします。
RBAC を有効にすると、ほとんどの機能はデフォルトで無効になっています。
- RHDH の Catalog ページに移動します。Create ボタンは表示されません。新しいコンポーネントは作成できません。
- API ページに移動します。Register ボタンは表示されません。
次のステップ
- Developer Hub のリソースへのパーミッションを明示的に有効にします。