5.2. Helm を使用して外部ファイルで認可の定義


Red Hat Developer Hub のメンテナンスを自動化するには、Developer Hub を起動する前に、外部ファイルで権限とロールを定義します。ファイルを準備し、OpenShift Container Platform プロジェクトにアップロードして、外部ファイルを使用するように Developer Hub を設定する必要があります。

手順

  1. 次の形式を使用して、CSV ファイル rbac-policies.csv でポリシーを定義します。

    1. ロール権限を定義します。

      p, <role_entity_reference>, <permission>, <action>, <allow_or_deny>
      <role_entity_reference>
      ロールエンティティー参照 (例: role:default/guest)
      <permission>

      権限 (例: bulk.importcatalog.entity.readcatalog.entity.refresh)、または権限リソースタイプ (例: bulk-importcatalog-entity)

      権限ポリシーリファレンス を参照してください。

      <action>
      アクションタイプ (例: usereadcreateupdatedelete)。
      <allow_or_deny>
      許可されるアクセス: (allow または deny)。
    2. グループまたはユーザーにロールを割り当てます。

      g, <group_or_user>, <role_entity_reference>
      <group_or_user>

      グループ (例: user:default/mygroup)、またはユーザー (例: user:default/myuser)。

      サンプル rbac-policies.csv

      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/guests

  2. 次の形式を使用して、YAML ファイル rbac-conditional-policies.yaml で条件付きポリシーを定義します。

    result: CONDITIONAL
    roleEntityRef: <role_entity_reference>
    pluginId: <plugin_id>
    permissionMapping:
      - read
      - update
      - delete
    conditions: <conditions>

    条件付きポリシーリファレンス を参照してください。

  3. rbac-policies.csv ファイルと rbac-conditional-policies.yaml ファイルを、Developer Hub を含む OpenShift Container Platform プロジェクトの rbac-policies config map にアップロードします。

    $ oc create configmap rbac-policies \
         --from-file=rbac-policies.csv \
         --from-file=rbac-conditional-policies.yaml
  4. Developer Hub Backstage Helm チャートを更新して、rbac-policies config map からファイルを Developer Hub ファイルシステムにマウントします。

    1. Developer Hub Helm チャートで、Root Schema Backstage chart schema Backstage parameters Backstage container additional volume mounts に移動します。
    2. Add Backstage container additional volume mounts を選択し、次の値を追加します。

      mountPath
      /opt/app-root/src
      名前
      rbac-policies
    3. RBAC ポリシーを、Developer Hub Helm チャートの Backstage container additional volumes に追加します。

      name
      rbac-policies
      configMap
      defaultMode
      420
      name
      rbac-policies
  5. 外部ファイル rbac-policies.csv および rbac-conditional-policies.yaml を使用するように、Developer Hub の app-config.yaml 設定ファイルを更新します。

    app-config.yml フラグメント

    permission:
      enabled: true
      rbac:
        conditionalPoliciesFile: /opt/app-root/src/rbac-conditional-policies.yaml
        policies-csv-file: /opt/app-root/src/rbac-policies.csv
        policyFileReload: true

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.