第3章 Gatekeeper Operator
Gatekeeper は、Open Policy Agent (OPA) で実行されるカスタムリソース定義ベースのポリシーを強制できる監査機能を備えた検証 Webhook です。Gatekeeper Operator ポリシーを使用して、クラスターに Gatekeeper をインストールできます。Gatekeeper 制約を使用して、Kubernetes リソースのコンプライアンスを評価できます。ポリシーエンジンとして OPA を活用し、ポリシー言語に Rego を使用できます。
前提条件: Gatekeeper をインストールし、クラスターに Gatekeeper ポリシーを適用するには、Red Hat Advanced Cluster Management for Kubernetes または Red Hat OpenShift Container Platform Plus サブスクリプションが必要です。Gatekeeper は、最新バージョンの Red Hat Advanced Cluster Management でサポートされるバージョン 3.11 を除く、OpenShift Container Platform のバージョンでのみサポートされます。
Gatekeeper Operator の使用方法の詳細は、以下を参照してください。
3.1. Gatekeeper の制約および制約テンプレートの統合 リンクのコピーリンクがクリップボードにコピーされました!
Gatekeeper ポリシーは、制約テンプレート (ConstraintTemplates) と制約を使用して記述されます。Red Hat Advanced Cluster Management ポリシーで Gatekeeper 制約を使用する以下の YAML の例を表示します。
ConstraintTemplatesと制約: Red Hat Advanced Cluster Management ポリシーを使用して Gatekeeper 統合機能を使用し、Gatekeeper 制約のマルチクラスター分散とハブクラスターでの Gatekeeper 監査結果の集約を行います。次の例では、GatekeeperConstraintTemplateと制約 (K8sRequiredLabels) を定義して、gatekeeperラベルがすべての namespace に設定されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
remediationActionがinformに設定されているため、Gatekeeper 制約のenforcementActionフィールドはwarnにオーバーライドされます。これは、gatekeeperラベルが欠落している namespace の作成または更新を Gatekeeper が検出し、警告することを意味します。remediationActionポリシーがenforceに設定されている場合、Gatekeeper 制約のenforcementActionフィールドはdenyにオーバーライドされます。このコンテキストでは、この設定により、gatekeeperラベルが欠落している namespace をユーザーが作成または更新できなくなります。- 2 3
- オプション: 各 Gatekeeper 制約または制約テンプレートに対して、
policy.open-cluster-management.io/severityアノテーションの重大度値を設定します。有効な値は、他の Red Hat Advanced Cluster Management ポリシータイプと同じです (low、medium、high、またはcritical)。
以前のポリシーでは、ポリシーステータスメッセージ
warn - you must provide labels: {"gatekeeper"} (on Namespace default); warn - you must provide labels: {"gatekeeper"} (on Namespace gatekeeper-system)が表示される場合があります。Gatekeeper 制約またはConstraintTemplatesを含むポリシーが削除されると、制約およびConstraintTemplatesもマネージドクラスターから削除されます。コンソールから特定のマネージドクラスターの Gatekeeper 監査結果を表示するには、ポリシーテンプレートの Results ページに移動します。検索が有効になっている場合は、監査に失敗した Kubernetes オブジェクトの YAML を表示します。
注記:
- Related resources セクションは、監査結果が Gatekeeper バージョン 3.9 以降で生成された場合にのみ使用できます。
- Gatekeeper の監査機能は、デフォルトでは 1 分ごとに実行されます。監査結果はハブクラスターに返送され、マネージドクラスターの Red Hat Advanced Cluster Management ポリシーステータスで表示されます。
policy-gatekeeper-admission: Red Hat Advanced Cluster Management ポリシー内のpolicy-gatekeeper-admission設定ポリシーを使用して、Gatekeeper アドミッション Webhook によって拒否された Kubernetes API リクエストを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.1.1. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
-
詳細は、
policy-gatekeeper-operator.yamlを参照してください。 - 詳細は、OPA ゲートキーパーとは を参照してください。
- 他のポリシーの管理に関する詳細は、設定ポリシーの管理 を参照してください。
- セキュリティーフレームワークに関する他のトピックについては、ガバナンス を参照してください。