Zero Trust dans le Cloud : construire une architecture qui ne fait confiance à personne
Le modèle Zero Trust transforme la sécurité Cloud en supprimant la confiance implicite. Découvrez ses principes, son architecture et son intégration avec Kubernetes.

Zero Trust dans le Cloud : construire une architecture qui ne fait confiance à personne
Pendant longtemps, la sécurité informatique reposait sur une idée relativement simple : protéger le réseau interne et considérer les utilisateurs et les systèmes situés à l'intérieur comme fiables.
Cette approche fonctionnait relativement bien lorsque les applications étaient hébergées dans des datacenters traditionnels avec des frontières réseau clairement définies.
Mais les architectures modernes ont profondément changé.
Les applications sont désormais distribuées entre plusieurs régions Cloud, des services SaaS, des clusters Kubernetes, des API, des applications mobiles et des environnements hybrides.
Dans ce contexte, une nouvelle approche est devenue essentielle : Zero Trust.
Le principe est simple : ne jamais faire confiance automatiquement, toujours vérifier.
1. Qu'est-ce que le Zero Trust ?
Le Zero Trust est un modèle de sécurité basé sur l'idée qu'aucun utilisateur, appareil, application ou réseau ne doit être considéré comme fiable par défaut.
Contrairement à une architecture traditionnelle qui peut considérer le réseau interne comme une zone de confiance, Zero Trust considère chaque requête comme potentiellement risquée.
Traditional Security
Internet
|
v
Firewall
|
v
Trusted Internal Network
|
+---- Application
+---- Database
+---- Servers
Dans ce modèle traditionnel, obtenir un accès au réseau interne peut donner accès à plusieurs ressources.
Zero Trust adopte une approche différente :
User
|
v
Authentication
|
v
Authorization
|
v
Device Verification
|
v
Policy Evaluation
|
v
Application
Chaque accès est vérifié indépendamment.
2. Pourquoi le modèle traditionnel devient insuffisant
Les infrastructures modernes ne possèdent plus une frontière réseau unique.
Une entreprise peut utiliser simultanément :
- AWS
- Azure
- Google Cloud
- Kubernetes
- Applications SaaS
- VPN
- Applications mobiles
- API publiques
- Postes de travail distants
Un utilisateur peut donc accéder à une application depuis pratiquement n'importe quel endroit.
L'adresse IP ou la localisation réseau ne suffit plus pour déterminer si l'accès doit être autorisé.
3. Les principes fondamentaux du Zero Trust
Une architecture Zero Trust repose sur plusieurs principes fondamentaux.
Principe 1 : Verify Explicitly
Chaque demande d'accès doit être vérifiée en fonction de plusieurs facteurs :
- Identité
- Authentification
- Appareil
- Localisation
- Application
- Contexte
- Risque
Principe 2 : Least Privilege
Un utilisateur ou un service ne doit disposer que des permissions nécessaires à son fonctionnement.
Par exemple, une application frontend ne devrait pas disposer directement d'un accès administrateur à une base de données.
Principe 3 : Assume Breach
L'architecture doit être conçue en supposant qu'une compromission peut se produire.
L'objectif n'est donc pas uniquement d'empêcher une attaque, mais également de limiter son impact.
4. Identity : le nouveau périmètre de sécurité
Dans une architecture Zero Trust, l'identité devient l'un des principaux éléments de contrôle.
L'ancien modèle pouvait ressembler à :
IP Address
|
v
Network
|
v
Application
Le modèle Zero Trust ressemble davantage à :
Identity
+
Device
+
Context
+
Risk
|
v
Authorization
|
v
Application
L'objectif est de déterminer non seulement qui demande l'accès, mais également dans quel contexte.
5. Multi-Factor Authentication
L'authentification basée uniquement sur un mot de passe représente un risque important.
Le Zero Trust encourage donc l'utilisation de mécanismes MFA.
Une authentification peut combiner :
- Mot de passe
- Application d'authentification
- Clé de sécurité
- Certificat
- Biométrie
L'objectif est d'éviter qu'un seul secret compromis permette d'obtenir un accès complet.
6. Zero Trust et IAM
L'IAM, ou Identity and Access Management, constitue une composante centrale du Zero Trust.
Une politique IAM correctement conçue doit répondre à plusieurs questions :
- Qui est l'utilisateur ?
- Quelle application utilise-t-il ?
- Quelle ressource souhaite-t-il atteindre ?
- Pourquoi a-t-il besoin de cette ressource ?
- Quel niveau de permission est nécessaire ?
Le principe du moindre privilège permet ensuite de réduire les permissions.
7. Segmentation réseau
Une architecture Zero Trust ne doit pas permettre une communication libre entre tous les composants.
Les applications doivent être segmentées.
Internet
|
v
WAF
|
v
API Gateway
|
+---------+---------+
| |
v v
Frontend Backend
|
v
Database
Le frontend ne devrait pas nécessairement avoir accès directement à la base de données.
Le backend est le seul composant autorisé à communiquer avec celle-ci.
8. Micro-segmentation
La micro-segmentation pousse cette idée encore plus loin.
Au lieu de sécuriser uniquement des réseaux entiers, on contrôle les communications entre services individuels.
C'est particulièrement intéressant avec Kubernetes.
Namespace A
Frontend
|
| Allowed
v
Backend
|
| Allowed
v
Database
Namespace B
Frontend
|
X
Database A
Les communications non nécessaires doivent être bloquées.
9. Zero Trust et Kubernetes
Kubernetes fournit plusieurs mécanismes pouvant contribuer à une architecture Zero Trust.
- RBAC
- ServiceAccounts
- NetworkPolicies
- Namespaces
- Pod Security
- Secrets
- Admission Controllers
Par exemple, les NetworkPolicies peuvent limiter les communications entre les workloads.
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: backend-policy
namespace: production
spec:
podSelector:
matchLabels:
app: backend
policyTypes:
- Ingress
ingress:
- from:
- podSelector:
matchLabels:
app: frontend
Cette politique permet de limiter les connexions entrantes au backend aux pods identifiés comme frontend.
10. Service Accounts
Les applications Kubernetes ont elles aussi besoin d'identités.
Un pod peut utiliser un ServiceAccount pour communiquer avec l'API Kubernetes ou d'autres services.
Il est essentiel d'éviter d'utiliser des permissions excessives.
Application
|
v
ServiceAccount
|
v
RBAC
|
v
Allowed Resources
Une application qui doit uniquement lire certaines ressources ne devrait pas recevoir des permissions permettant de modifier l'ensemble du cluster.
11. Zero Trust et Cloud
Les fournisseurs Cloud modernes proposent de nombreux services permettant de mettre en œuvre les principes Zero Trust.
Une architecture Cloud peut combiner :
- IAM
- MFA
- Private Networks
- Security Groups
- Network Policies
- Identity-aware proxies
- Encryption
- Logging
- Monitoring
L'objectif est de construire plusieurs couches de contrôle.
12. Exemple d'architecture Zero Trust Cloud
Internet
|
v
WAF
|
v
API Gateway
|
Authentication
|
Authorization
|
+-------------+-------------+
| |
v v
Frontend Backend
|
Network Policy
|
v
Database
|
Encryption
Chaque couche possède une responsabilité différente.
13. Encryption Everywhere
Le Zero Trust recommande également de protéger les données lorsqu'elles sont transmises et lorsqu'elles sont stockées.
Data in Transit
Les communications doivent utiliser des protocoles sécurisés comme TLS.
Data at Rest
Les données stockées doivent également être protégées par des mécanismes de chiffrement adaptés.
Le principe général est :
Client
|
| TLS
v
Application
|
| TLS
v
Database
|
| Encryption at Rest
v
Storage
14. Monitoring et détection
Zero Trust ne peut pas fonctionner correctement sans visibilité.
Les équipes doivent être capables de détecter :
- Les connexions inhabituelles
- Les changements de permissions
- Les comportements anormaux
- Les erreurs d'authentification
- Les accès à des ressources sensibles
Les logs peuvent ensuite être centralisés dans une plateforme de monitoring ou un SIEM.
15. Zero Trust et DevSecOps
Le Zero Trust ne doit pas être ajouté uniquement à la fin du cycle de développement.
Il doit être intégré directement dans les pipelines DevSecOps.
Developer
|
v
Git
|
v
CI
|
+---- Security Scan
|
+---- Dependency Scan
|
+---- IaC Scan
|
+---- Container Scan
|
v
Deployment
|
v
Kubernetes
Cette approche permet d'identifier les problèmes de sécurité avant leur arrivée en production.
16. Policy as Code
Une architecture Zero Trust moderne peut également utiliser le concept de Policy as Code.
Les règles de sécurité sont alors définies sous forme de code et peuvent être versionnées avec Git.
Par exemple, une organisation peut décider qu'un workload Kubernetes ne doit jamais :
- utiliser le mode privileged ;
- exécuter des conteneurs en root ;
- utiliser une image non approuvée ;
- exposer directement une base de données sur Internet.
17. Le principe Assume Breach
L'un des concepts les plus intéressants du Zero Trust est Assume Breach.
Cela signifie qu'une architecture doit être conçue en supposant qu'une compromission peut éventuellement se produire.
La question devient alors :
Que se passe-t-il si un compte ou un service est compromis ?
Une bonne architecture doit limiter les mouvements possibles après cette compromission.
C'est notamment le rôle de :
- Least Privilege
- Network Segmentation
- Micro-Segmentation
- Short-lived Credentials
- Monitoring
- Incident Response
18. Zero Trust et attaques latérales
Dans une architecture traditionnelle, un attaquant ayant compromis une machine peut tenter de se déplacer vers d'autres systèmes.
Ce phénomène est appelé lateral movement.
La micro-segmentation et le principe du moindre privilège permettent de réduire cette possibilité.
Compromised Service
|
X
|
Other Services
Only explicitly
authorized paths
are allowed.
19. Construire progressivement une architecture Zero Trust
Il n'est pas nécessaire de transformer toute une infrastructure en une seule étape.
Une migration progressive peut être organisée ainsi :
- Identifier les utilisateurs et les workloads.
- Centraliser les identités.
- Activer MFA.
- Réduire les permissions IAM.
- Segmenter le réseau.
- Ajouter des politiques Kubernetes.
- Centraliser les logs.
- Automatiser les contrôles de sécurité.
- Mesurer continuellement les risques.
20. Les erreurs fréquentes
Erreur 1 : considérer le VPN comme Zero Trust
Un VPN peut sécuriser une connexion réseau, mais il ne garantit pas que l'utilisateur doit avoir accès à toutes les ressources internes.
Erreur 2 : donner trop de permissions
Des permissions excessives augmentent fortement l'impact potentiel d'une compromission.
Erreur 3 : oublier les workloads
Le Zero Trust ne concerne pas uniquement les utilisateurs humains. Les applications et services doivent également être authentifiés et autorisés.
Erreur 4 : ne pas surveiller les événements
Sans logs et observabilité, il devient difficile de détecter les comportements anormaux.
21. Architecture Zero Trust complète
INTERNET
|
v
WAF
|
v
API GATEWAY
|
v
IDENTITY PROVIDER
|
+----------+----------+
| |
Identity Device
| |
+----------+----------+
|
v
POLICY ENGINE
|
+---------+---------+
| |
Allowed Denied
| |
v v
Application Block
|
+-------+-------+
| |
Frontend Backend
|
Network Policy
|
v
Database
|
Encryption
|
v
Storage
+-----------------------+
| Monitoring / SIEM |
| Logs / Alerts |
+-----------------------+
22. Zero Trust : sécurité continue
Le Zero Trust ne doit pas être considéré comme un produit que l'on installe.
Il s'agit plutôt d'une architecture et d'une stratégie de sécurité.
Les décisions d'accès doivent pouvoir être réévaluées continuellement en fonction du contexte.
Un utilisateur qui était autorisé il y a quelques minutes ne doit pas nécessairement être considéré comme fiable indéfiniment.
Cette philosophie conduit à une sécurité beaucoup plus dynamique.
23. Zero Trust et architecture Cloud Native
Les architectures Cloud Native sont particulièrement adaptées aux principes Zero Trust parce qu'elles sont déjà basées sur des services distribués, des identités et des politiques.
Une plateforme moderne peut ainsi combiner :
- Kubernetes pour l'orchestration
- IAM pour les identités
- NetworkPolicies pour le réseau
- Secrets management pour les credentials
- GitOps pour les configurations
- DevSecOps pour les contrôles automatisés
- Observability pour la visibilité
Ces technologies peuvent fonctionner ensemble pour construire une plateforme Cloud sécurisée et résiliente.
24. Conclusion
Le Zero Trust représente un changement profond dans la manière de concevoir la sécurité informatique.
Au lieu de considérer le réseau interne comme une zone de confiance, chaque accès doit être vérifié et autorisé explicitement.
L'identité devient une composante essentielle du périmètre de sécurité. La segmentation réduit les mouvements latéraux. Le moindre privilège limite l'impact d'une compromission. L'observabilité permet de détecter les comportements suspects.
Dans les environnements Kubernetes et Cloud Native, ces principes peuvent être combinés avec RBAC, NetworkPolicies, IAM, GitOps et DevSecOps.
Le résultat est une architecture dans laquelle la sécurité n'est plus basée sur une frontière réseau unique, mais sur plusieurs contrôles indépendants.
Never trust by default. Always verify. Always limit access.
À retenir
- Zero Trust signifie ne jamais faire confiance automatiquement.
- Chaque accès doit être authentifié et autorisé.
- Le principe du moindre privilège réduit les risques.
- La micro-segmentation limite les mouvements latéraux.
- Kubernetes fournit plusieurs mécanismes utiles pour implémenter Zero Trust.
- L'IAM est une composante centrale de l'architecture.
- Le monitoring et les logs sont indispensables.
- Zero Trust doit être intégré dans une démarche DevSecOps.