5.2. Helm を使用して外部ファイルで認可の定義
Red Hat Developer Hub のメンテナンスを自動化するには、Developer Hub を起動する前に、外部ファイルで権限とロールを定義します。ファイルを準備し、OpenShift Container Platform プロジェクトにアップロードして、外部ファイルを使用するように Developer Hub を設定する必要があります。
前提条件
手順
次の形式を使用して、CSV ファイル
rbac-policies.csvでポリシーを定義します。ロール権限を定義します。
p, <role_entity_reference>, <permission>, <action>, <allow_or_deny>
p, <role_entity_reference>, <permission>, <action>, <allow_or_deny>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - <role_entity_reference>
-
ロールエンティティー参照 (例:
role:default/guest)。 - <permission>
権限 (例:
bulk.import、catalog.entity.read、catalog.entity.refresh)、または権限リソースタイプ (例:bulk-import、catalog-entity)。権限ポリシーリファレンス を参照してください。
- <action>
-
アクションタイプ (例:
use、read、create、update、delete)。 - <allow_or_deny>
-
許可されるアクセス: (
allowまたはdeny)。
グループまたはユーザーにロールを割り当てます。
g, <group_or_user>, <role_entity_reference>
g, <group_or_user>, <role_entity_reference>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - <group_or_user>
グループ (例:
user:default/mygroup)、またはユーザー (例:user:default/myuser)。サンプル
rbac-policies.csvp, role:default/guests, catalog-entity, read, allow p, role:default/guests, catalog.entity.create, create, allow g, user:default/my-user, role:default/guests g, group:default/my-group, role:default/guests
p, role:default/guests, catalog-entity, read, allow p, role:default/guests, catalog.entity.create, create, allow g, user:default/my-user, role:default/guests g, group:default/my-group, role:default/guestsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
次の形式を使用して、YAML ファイル
rbac-conditional-policies.yamlで条件付きポリシーを定義します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 条件付きポリシーリファレンス を参照してください。
rbac-policies.csvファイルとrbac-conditional-policies.yamlファイルを、Developer Hub を含む OpenShift Container Platform プロジェクトのrbac-policiesconfig map にアップロードします。oc create configmap rbac-policies \ --from-file=rbac-policies.csv \ --from-file=rbac-conditional-policies.yaml$ oc create configmap rbac-policies \ --from-file=rbac-policies.csv \ --from-file=rbac-conditional-policies.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow Developer Hub
BackstageHelm チャートを更新して、rbac-policiesconfig map からファイルを Developer Hub ファイルシステムにマウントします。-
Developer Hub Helm チャートで、Root Schema
Backstage chart schema Backstage parameters Backstage container additional volume mounts に移動します。 Add Backstage container additional volume mounts を選択し、次の値を追加します。
- mountPath
-
/opt/app-root/src/rbac - 名前
-
rbac-policies
RBAC ポリシーを、Developer Hub Helm チャートの Backstage container additional volumes に追加します。
- name
-
rbac-policies - configMap
- defaultMode
-
420 - name
-
rbac-policies
-
Developer Hub Helm チャートで、Root Schema
外部ファイル
rbac-policies.csvおよびrbac-conditional-policies.yamlを使用するように、Developer Hub のapp-config.yaml設定ファイルを更新します。app-config.yamlファイルのフラグメントCopy to Clipboard Copied! Toggle word wrap Toggle overflow