Chuyển đến nội dung chính

レッスン 24: アドミッションポリシーの検証 — GA K8S 1.30

K8s 1.30 からの ValidatingAdmissionPolicy GA — Webhook サーバーをデプロイする必要なく、CEL (共通表現言語) でポリシーを作成します。 OPA/ゲートキーパーと比較してください。パターン: 最新のタグをブロックし、ラベルを適用し、リソース制限を検証します。

🔒 DevSecOps — レッスン 24 レッスン 24: 承認ポリシーの検証 — GA K8S 1.30

KUBERNETES: 基本から高度まで

モジュール 6: セキュリティ

xdev.asia

🎯 レッスンの目標_

ValidatingAdmissionPolicy GA K8s 1.30 を理解し、Webhook サーバーを使用せずに CEL ポリシーを作成し、OPA/ゲートキーパーが必要な場合を認識します。

1.従来のアドミッション Webhook の問題

Webhook ベースのアドミッション (OPA/ゲートキーパー、Kyverno) には欠点があります:

  • ネットワーク オーバーヘッド: 各 API リクエストは Webhook サービスへの HTTP 呼び出しを行う必要があります
  • 可用性の依存関係: Webhook サービスがダウンした場合 → API リクエストが失敗した場合
  • 運用上の負担: Webhook の展開、TLS 証明書を維持する必要がある
  • レイテンシ: すべての API 呼び出しにレイテンシを追加

2. ValidatingAdmissionPolicy — 組み込み、Webhook なし

K8s 1.30 の

ValidatingAdmissionPolicy GA では、__HTMLTAG_96___CEL (共通表現言語).

を使用して、検証ポリシーを API サーバーに直接記述することができます。
  • API サーバー プロセスで実行 — ネットワーク オーバーヘッドなし
  • 追加のサービスを展開する必要はありません
  • 単一障害点はありません__HTMLTAG_105___
  • Webhook よりも約 10 倍速い

3. CEL の基本

CEL は、シンプルで安全な式言語です (ループや副作用はありません)。

___コードブロック_0___

4. AdmissionPolicy 構造の検証

___コードブロック_1___

5. AdmissionPolicyBinding

の検証中 ___コードブロック_2___

6.共通ポリシー

6.1 「最新」タグが付いたブロック画像

___コードブロック_3___

6.2 必要なリソース制限

___コードブロック_4___

6.3 ラベルが必要

___コードブロック_5___

6.4 レプリカの制限

___コードブロック_6___

6.5 権限昇格の防止__HTMLTAG_128___ ___コードブロック_7___

7.パラメータを含むポリシー

___コードブロック_8___

8.比較: ValidatingAdmissionPolicy と OPA/ゲートキーパー

___コードブロック_9___

OPA/ゲートキーパーは、 の場合に引き続き必要です: 変更ポリシー (フィールドの自動挿入) が必要な場合、CEL サポートよりも複雑なポリシー ロジックが必要な場合、または変更 Webhook が必要な場合。

概要

  • ValidatingAdmissionPolicy GA K8s 1.30: 組み込み、Webhook は不要
  • CEL: ポリシー ロジック用の安全な式言語
  • アクティブ化するにはバインディングが必要です: ValidatingAdmissionPolicyBinding
  • アクション: 拒否、監査、警告
  • パラメータ (ConfigMap) を使用してポリシーを再利用
  • OPA/ゲートキーパー: 変化する複雑な rego ロジックには引き続き必要