Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Kyverno

cloud

Définition

Kyverno est un moteur de politiques Kubernetes permettant de valider, muter, et générer des ressources Kubernetes via des politiques exprimées en YAML natif Kubernetes, sans nécessiter l'apprentissage d'un langage de programmation spécifique comme Rego (OPA). Il est devenu un projet CNCF incubé et une alternative populaire à OPA/Gatekeeper pour les équipes cherchant une solution plus accessible. Kyverno s'intègre comme Admission Controller dans Kubernetes et propose trois types de politiques. Les policies de validation (validate) refusent ou avertissent lors de la création de ressources non conformes. Les policies de mutation (mutate) modifient automatiquement les ressources lors de leur création (ex: ajouter automatiquement des labels, des limites de ressources, ou des annotations). Les policies de génération (generate) créent automatiquement des ressources dérivées (ex: créer automatiquement un NetworkPolicy dans chaque nouveau namespace). Les politiques Kyverno utilisent JMESPath et des fonctions intégrées pour exprimer les conditions, rendant les politiques lisibles par des ingénieurs DevOps sans formation en Rego. Une politique Kyverno pour interdire les images sans tag spécifique (ex: interdire :latest) : kind: ClusterPolicy, spec.rules[0].match.resources.kinds: [Pod], spec.rules[0].validate.message: "Utilisez une version de tag spécifique", spec.rules[0].validate.pattern.spec.containers[*].image: "!*:latest". La bibliothèque officielle de politiques Kyverno (kyverno.io/policies) propose des centaines de politiques prêtes à l'emploi couvrant : les Pod Security Standards, les best practices Kubernetes, la conformité NSA/CISA Kubernetes Hardening Guide, les contrôles CIS Kubernetes Benchmark, et les politiques spécifiques aux plateformes cloud (EKS, AKS, GKE). Kyverno inclut également des capacités de reporting de conformité via PolicyReports et ClusterPolicyReports (ressources CRD Kubernetes) permettant de visualiser l'état de conformité de toutes les ressources dans le cluster.

Politiques Kyverno essentielles

Commencez par ces politiques fondamentales : disallow-latest-tag (interdire les images :latest), require-pod-resources (exiger CPU/memory requests et limits), disallow-privileged-containers (bloquer securityContext.privileged: true), require-run-as-non-root (exiger runAsNonRoot: true), require-drop-all (capabilities.drop: ALL obligatoire), restrict-image-registries (n'autoriser que vos registres approuvés). Activez ces politiques en mode Audit puis Enforce progressivement.

Kyverno CLI pour la CI/CD

Le Kyverno CLI permet de valider les manifests Kubernetes contre les politiques Kyverno avant leur application dans le cluster : kyverno apply policy.yaml --resource deployment.yaml. Intégrez dans votre pipeline CI/CD comme gate bloquant : si les manifests générés par Helm ou Kustomize violent une politique, le pipeline échoue avant tout déploiement. Cette approche shift-left réduit les rejets d'admission en production.

Mutation et génération automatique

Utilisez les mutations Kyverno pour appliquer des valeurs par défaut sécurisées : add seccompProfile: RuntimeDefault si absent, ajouter readOnlyRootFilesystem: true par défaut. La génération automatique crée un NetworkPolicy default-deny dans chaque nouveau namespace, un ResourceQuota limitant les ressources, et un LimitRange définissant les limites par défaut. Ces automatisations réduisent les configurations manuelles et les risques d'oubli.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis