Ce que vous allez apprendre dans ce TP
- Donner un accès en lecture seule
- Vérifier les droits avec can-i
- Isoler des applications
RBAC #
Ce que vous allez apprendre dans cette section
- Donner un accès en lecture seule
- Vérifier les droits avec can-i
- Isoler des applications
Contexte. Par défaut, tout pod peut parler à tous les autres et le compte de service par défaut peut avoir plus de droits que nécessaire. Appliquer le moindre privilège (RBAC) et la segmentation réseau (NetworkPolicy) limite les dégâts en cas de compromission.
Prérequis : Cluster avec CNI compatible (Calico ou Cilium), kubectl · Durée estimée : 50 min
Moindre privilège avec un ServiceAccount.1. Créer namespace et ServiceAccount
Pourquoi ? Un ServiceAccount dédié permet de donner à une application uniquement les droits dont elle a besoin, au lieu du compte par défaut.
Un namespaceprodet un comptelecteur.2. Donner la lecture des pods
Pourquoi ? can-i prouve concrètement ce qui est autorisé ou refusé : on vérifie le principe du moindre privilège au lieu de le supposer.
Créez un Role et un RoleBinding, puis testez aveccan-i.
NetworkPolicy #
Interdire par défaut puis autoriser.
3. Tout interdire
Pourquoi ? Une politique « tout interdire » est le point de départ d'une segmentation : on autorise ensuite uniquement ce qui est nécessaire.
Appliquez une politiquedeny-all(CNI compatible : Calico ou Cilium).4. Autoriser uniquement un client
Pourquoi ? Autoriser un seul client puis tester les deux cas (autorisé, refusé) prouve que la règle est bien appliquée par le CNI.
Autorisez les podsrole=clientà joindreweb.
Niveau de difficulté : ●●●○○ (3/5)
Mon suivi
🧪 Lancer l’environnement de TP ↗
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
Articles recommandés
Kubernetes : sécuriser son cluster (RBAC, ServiceAccounts, NetworkPolicies, Pod Security)
Sécuriser Kubernetes : RBAC (Role, ClusterRole, bindings), ServiceAccounts, NetworkPolicies, Pod ...
Aide-mémoire Docker : Les commandes essentielles
Un guide pratique regroupant toutes les commandes indispensables pour manipuler les images, les c...
Kubernetes : architecture et composants (control plane, nœuds, objets)
Comprendre l'architecture de Kubernetes : API server, etcd, scheduler, controller manager, kubele...
Aide-mémoire kubectl : les commandes essentielles
Toutes les commandes kubectl utiles au quotidien : contextes, ressources, logs, exec, port-forwar...
Kubernetes : Pods, ReplicaSets et Deployments (déployer et mettre à jour)
Maîtriser les workloads Kubernetes : anatomie d'un pod, ReplicaSet, Deployment, stratégies Rollin...
Kubernetes : exposer ses applications (Services, Ingress et Gateway API)
Exposer des applications dans Kubernetes : Services ClusterIP/NodePort/LoadBalancer, Ingress, Ing...
Kubernetes : fiabilité et mise à l'échelle (probes, ressources, HPA, PDB)
Rendre une application résiliente dans Kubernetes : liveness, readiness et startup probes, reques...
Docker : vue d'ensemble, architecture et premiers pas
Découvrir Docker : conteneurs vs machines virtuelles, architecture client/daemon/registre, images...
Bonnes pratiques Docker : images, exécution, sécurité et exploitation
Les bonnes pratiques Docker : Dockerfile et builds multi-étapes, images minimales et reproductibl...