検索

1.2. namespace スコープのインスタンスにユーザー定義のクラスターロールを指定して、一般的なクラスターロールを設定する

download PDF

クラスター管理者は、argocd.argoproj.io/managed-by ラベルを使用して Argo CD に namespace へのアクセス権限を付与すると、Argo CD は namespace-admin 権限を想定します。次に、Red Hat OpenShift GitOps Operator は、次の GitOps コントロールプレーンコンポーネントのすべてのマネージド namespace のロールバインディングを自動的に作成します。

  • Argo CD Application Controller
  • Argo CD サーバー
  • Argo CD ApplicationSet Controller

開発チームなど、管理者以外のユーザーに namespace を提供する場合、namespace-admin 権限を使用してネットワークポリシーなどのオブジェクトを変更できます。これらの namespace に Argo CD インスタンスをインストールすると、開発チームが admin 権限を付与し、割り当てられた権限を間接的に昇格します。これらのロールは高度な特権があり、すべてのリソースを削除できます。予防措置として、Operator が Argo CD Application Controller および Argo CD サーバーコンポーネント用に作成するロールバインディング内のすべてのマネージド namespace に共通のクラスターロールを設定することで、セキュリティー要件を満たすために特定の縮小パーミッションセットを定義できます。

すべてのマネージド namespace に共通のクラスターロールを設定するには、Operator の Subscription オブジェクト YAML ファイルで CONTROLLER_CLUSTER_ROLE 環境変数および SERVER_CLUSTER_ROLE 環境変数にユーザー定義のクラスターロールを指定します。その結果、デフォルトの admin ロールを作成する代わりに、Operator は既存のユーザー定義のクラスターロールを使用し、すべてのマネージド namespace のロールバインディングを作成します。

前提条件

  • OpenShift Container Platform クラスターに管理者としてログインしている。
  • Red Hat OpenShift GitOps Operator が OpenShift Container Platform クラスターにインストールされている。

手順

  1. Administrator パースペクティブで、Administration CustomResourceDefinitions に移動します。
  2. サブスクリプション CRD を見つけて、クリックして開きます。
  3. Instances タブを選択し、openshift-gitops-operator サブスクリプションをクリックします。
  4. YAML タブを選択し、カスタマイズを行います。

    • CONTROLLER_CLUSTER_ROLE および SERVER_CLUSTER_ROLE 環境変数のユーザー定義のクラスターロールを指定します。

      Subscription の例

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: openshift-gitops-operator
        namespace: openshift-gitops-operator
      spec:
        config:
          env:
          - name: CONTROLLER_CLUSTER_ROLE
            value: gitops-controller-role 1
          - name: SERVER_CLUSTER_ROLE
            value: gitops-server-role 2

      1
      Argo CD Application Controller コンポーネントの環境変数の名前。
      2
      Argo CD サーバーコンポーネントの環境変数の名前。
ヒント

または、前述の環境変数を Operator の Deployment オブジェクト YAML ファイルに直接挿入することもできます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.