Nous présentons le concept du "Policy as Code" avec Thomas Foubert, consultant en cybersécurité. Le Policy as Code (PaC) est une évolution du mouvement "Everything as Code", permettant de définir des points de contrôle et des politiques de manière programmatique, scalable et réplicable.
Le PaC offre de nombreux avantages, notamment pour les PME développant des logiciels. Il permet d'industrialiser les contrôles dès le début du développement, en intégrant des tests de conformité aux différentes étapes (unitaires, intégration, etc.). Cela aide à réduire la dette technique et les efforts en cybersécurité.
Pour les grandes entreprises, le PaC facilite la mise à l'échelle de la conformité dans des environnements cloud complexes. Thomas relate une expérience chez Microsoft où son équipe a utilisé l'outil Open Policy Agent (OPA) pour contrôler les déploiements Azure et appliquer les politiques de sécurité des architectes, en amont dans les pipelines de déploiement.
Le PaC n'est pas limité au contrôle des déploiements. Il permet aussi d'industrialiser les audits en analysant des données structurées (exports de configuration, etc.) pour vérifier leur conformité à des règles définies. On peut ainsi auditer facilement des environnements cloud complets.
L'application du PaC s'illustre avec Terraform qui produit des plans de déploiement. OPA peut s'intégrer entre le plan et son application pour valider la conformité avant le déploiement effectif. Des règles peuvent bloquer un déploiement non conforme.
Le PaC trouve des cas d'usage innovants, comme le contrôle des échanges entre microservices en validant les tokens d'authentification/autorisation avec OPA avant d'atteindre les backends.
Les grands fournisseurs cloud proposent des solutions de PaC, comme Azure Policy. Mais des outils open source comme OPA offrent plus de flexibilité et sont cloud-agnostiques, un avantage pour les entreprises multi-cloud.
En résumé, le Policy as Code apporte une industrialisation précieuse des audits et du contrôle de conformité, permettant aux équipes de cybersécurité de gagner en efficacité face à l'ampleur des environnements cloud modernes. Il s'inscrit dans le mouvement de programmation de l'infrastructure informatique.
14 май 2024