2.2. ポリシーの概要
Red Hat Advanced Cluster Management for Kubernetes セキュリティーポリシーフレームワークを使用して、カスタムポリシーコントローラーおよびその他のポリシーを作成します。ポリシー作成には、Kubernetes カスタムリソース定義 (CRD) インスタンスを使用します。CRD の詳細は、「Extend the Kubernetes API with CustomResourceDefinitions」を参照してください。
各 Red Hat Advanced Cluster Management for Kubernetes ポリシーには、1 つ以上のテンプレートを含めることができます。ポリシー要素の詳細は、このページの以下の ポリシー YAML の表 のセクションを参照してください。
このポリシーには、ポリシードキュメントの適用先のクラスターを定義する PlacementRule と、Red Hat Advanced Cluster Management for Kubernetes ポリシーを配置ルールにバインドする PlacementBinding が必要です。PlacementRule
の定義方法に関する詳細は、アプリケーションライフサイクルドキュメントの「配置ルール」を参照してください。
重要:
-
PlacementRule
を作成して、マネージドクラスターにポリシーを適用し、PlacementRule
とPlacementBinding
をバインドする必要があります。 - ハブクラスターの namespae (クラスター namespace を除く) でポリシーを作成できます。クラスター namespace でポリシーを作成する場合には、Red Hat Advanced Cluster Management for Kubernetes により削除されます。
- 各クライアントおよびプロバイダーは、管理対象のクラウド環境で、Kubernetes クラスターでホストされているワークロードのソフトウェアエンジニアリング、セキュアなエンジニアリング、回復性、セキュリティー、規制準拠に関する内部エンタープライズセキュリティー基準を満たしていることを確認します。ガバナンスおよびセキュリティー機能を使用して、標準を満たすように可視性を確保し、設定を調整します。
以下のセクションでは、ポリシーコンポーネントについて説明します。
2.2.1. ポリシー YAML の構成
ポリシーの作成時に、必須パラメーターフィールドと値を含める必要があります。ポリシーコントローラーによっては、他の任意のフィールドおよび値を追加する必要がある場合があります。前述のパラメーターフィールドの YAML 構成は、以下を確認してください。
apiVersion: policy.open-cluster-management.io/v1 kind: Policy metadata: name: annotations: policy.open-cluster-management.io/standards: policy.open-cluster-management.io/categories: policy.open-cluster-management.io/controls: spec: policy-templates: - objectDefinition: apiVersion: kind: metadata: name: spec: remediationAction: disabled: --- apiVersion: apps.open-cluster-management.io/v1 kind: PlacementBinding metadata: name: placementRef: name: kind: apiGroup: subjects: - name: kind: apiGroup: --- apiVersion: apps.open-cluster-management.io/v1 kind: PlacementRule metadata: name: spec: clusterConditions: - type: clusterLabels: matchLabels: cloud: