DevSecOps Décodé : Le Mémo d'Expertise de Rémy Vilain
2025-09-28
Dans le cadre de la Nantes Digital Week, notre consultant DevOps, Rémy Vilain, est intervenu lors d'un ENI Talk pour partager son expertise sur un sujet clé : le DevSecOps. Aux côtés de Bruno BONNIN (La Poste) et Jordan ASSOULINE (Google), il a décrypté les enjeux et les bonnes pratiques de cette culture qui place la sécurité au cœur de la production logicielle. Cet article revient sur les points fondamentaux de son intervention, comme un mémo pratique pour comprendre et appliquer les grands principes du DevSecOps.
"La philosophie DevOps, c’est tout faire pour lever les frictions entre silos. Le reste, c’est de l’ingénierie." Patrick Debois (créateur du terme DevOps)
Le DevSecOps applique la même logique aux frictions de sécurité.
DevSecOps : Comment Intégrer la Sécurité au Cœur du Développement pour en Finir avec la Dette Technique
L'avènement du DevOps a révolutionné le cycle de vie du développement logiciel, en brisant les silos entre développeurs et opérationnels pour accélérer la livraison de valeur. Cependant, cette vélocité a souvent laissé un acteur essentiel sur le bas-côté : la sécurité. Trop souvent reléguée au rang de contrôle final, coûteux et douloureux. La réponse à ce défi est le DevSecOps : une évolution culturelle et technique qui, comme le souligne Rémy Villain, part d'un principe simple : "de grand pouvoir implique de grande responsabilité".
De DevOps à DevSecOps : Un changement de paradigme
"Avant, faire une release applicative c'était tout une organisation. Aujourd'hui c'est un non événement du quotidien. Le DevSecOps est dans la même optique : les audits et les contrôles de qualité doivent devenir des non événements au sein des équipes." Rémy Vilain
Le DevOps a donné aux équipes de développement une autonomie et une rapidité sans précédent sur leurs chaînes d'intégration et de déploiement continus (CI/CD). Cependant, si on veut conserver ces nouveaux bénéfices dans un contexte où les menaces se multiplient, il est important que la gestion de la sécurité connaisse une révolution similaire : C’est là que le DevSecOps tire ses racines. L'objectif est de passer d'un modèle réactif, où des audits de sécurité tardifs imposent des corrections complexes en fin de cycle, à une approche proactive où la sécurité est une compétence et une responsabilité partagée, intégrée dès la première ligne de code et infusée à travers toute la logique du développement logiciel.
Cartographier la sécurité sur le cycle de vie applicatif
Pour être efficace, la sécurité de l'information, qui protège la confidentialité, l'intégrité, la l'authenticité (modèle CIA, auquel on intègre parfois aussi la disponibilité) des données, doit être pensée à chaque étape du cycle de vie du logiciel.
- Phase de Code : L'analyse statique (SAST - Static Application Security Testing) et la détection de secrets (mots de passe, clés d'API) directement dans le code source constituent la première ligne de défense.
- Phase de Build : L'analyse de la composition logicielle (SCA - Software Composition Analysis) devient critique. Elle scanne les dépendances et bibliothèques tierces, véritable talon d'Achille de nombreuses applications modernes, pour y déceler des vulnérabilités connues.
- Phase de Test : Les tests dynamiques (DAST - Dynamic Application Security Testing) simulent des attaques sur l'application en cours d'exécution. Des techniques comme le fuzzing (injection de données invalides massives) et le scan des configurations d'Infrastructure as Code (IaC) viennent compléter cet arsenal.
- Phase de Déploiement : L'approche Policy as Code, avec des outils comme Kyverno pour le monde Kubernetes, Pulumi pour le cloud ou encore TFsec pour Terraform. Le but étant de faciliter et s’assurer que les déploiements consomment et labellisent des ressources conformes aux standards qu’on impose.
- Phase de Run : Le monitoring continu et les systèmes de détection d'intrusion sont indispensables pour identifier et réagir aux menaces en temps réel.
Le "Shift Left" : Le principe fondamental du DevSecOps
Le concept clé du DevSecOps est le "Shift Left", ou "décalage à gauche". Plus une vulnérabilité est détectée tôt dans le cycle, moins sa correction est coûteuse et complexe. Intégrer des outils comme SonarQube directement dans l'IDE du développeur ou Jfrog Xray pour l'analyse des artéfacts (packages, images Docker) en continu matérialise ce principe, transformant la sécurité en un réflexe quotidien plutôt qu'en une contrainte finale. Les plus ambitieux peuvent les intégrer comme condition sine qua none aux push vers le répertoire de code.
Automatisation et standardisation : Les garde-fous de la vélocité
L'expérience le prouve : une application qui n'est pas maintenue régulièrement accumule une dette technique et sécuritaire colossale. L'automatisation des contrôles de sécurité dans la CI/CD, ou via des exécutions automatiques régulières permet de contrôler et maintenir la qualité à moindre frais . Elle évite d'ouvrir la "boîte de Pandore" trois ans plus tard lors d'une migration d'infrastructure ou la montée de version d’un framework ou langage de programmation. Par ailleurs, la standardisation via la templatisation des pipelines de déploiement est un puissant levier. Même si chaque équipe considère son projet comme une exception, l'objectif final (ex: déployer une image Docker sur Kubernetes) est souvent identique sur l’ensemble du parc d’applications d’une entreprise. On retrouve des familles type : Dockerisation et Kubernetes, stack Java + Tomcat, stack Springboot… Avec une bonne logique de templatisation et de partage, une mise à jour des règles de sécurité ou l’intégration d’un nouvel outil sur les templates se propagent ainsi à l'ensemble des chaînes d’intégration, garantissant une cohérence et une fiabilité à grande échelle et à moindre coût.
Le facteur humain : gagner l'adhésion des développeurs
Intégrer la sécurité ajoute inévitablement de nouvelles contraintes. L'adoption par les développeurs est donc le principal défi. Rémy Villain utilise une analogie parlante : "Si vous avez déjà essayé de donner un médicament à un chat, c’est le même principe". L'approche frontale est rarement efficace. La solution consiste à "enrober le médicament dans une friandise". Le moyen le plus facile est souvent de commencer par prendre en compte les irritants ou en intégrant un outil qui lui va au contraire faciliter l'entretien qui pèse sur l’équipe de développement. L'exemple de Dependabot est parfait : il scanne les dépendances et crée automatiquement des Merge Requests pour proposer leurs mises à jour. Le développeur gagne du temps sur une tâche ingrate, et en retour, la sécurité du projet est renforcée. La communication, via des points bi-mensuels ou hebdomadaires, est également cruciale pour présenter les nouveautés, recueillir les retours et co-construire les solutions. On peut alors rapidement jauger les nouveautés, faire un retour rapide et surtout, prendre le temps de comprendre les attentes des développeurs. Par exemple, faire un scan des dépendances à chaque itération des pipelines est le meilleur moyen de détecter les failles. Mais si les développeurs ont intégrés un scan dans leur IDE, alors cette même action qui fait perdre 20 minutes à un développeur à chaque fois qu’il veut publier une image docker pour la tester devient redondante. On peut alors l’automatiser autrement, par exemple une fois par semaine, pour garder un contrôle sur le long terme quand celle-ci n’évoluera plus.
Gestion des secrets : Un enjeu technique critique
Dans un environnement moderne, les applications interagissent constamment via des API, nécessitant une authentification. La prolifération des tokens et autres secrets est un risque majeur. Laisser une clé d'API dans une couche d'image Docker est une erreur fréquente et critique. Les bonnes pratiques sont claires : 1. Centraliser l'utilisation des secrets : Seul l'outil de CI/CD doit posséder les clés pour interagir avec les services externes (registres, API). Il se charge de télécharger les dépendances en amont. 2. Privilégier les tokens éphémères : Plutôt que d'utiliser un compte de service avec une clé statique, il faut générer des tokens à durée de vie très courte (ex: une heure). En cas de fuite, l'impact est drastiquement limité car le token sera rapidement invalide. Le DevSecOps n'est pas une simple boîte à outils, mais une transformation en profondeur qui aligne la sécurité avec les objectifs de l'entreprise. En intégrant la culture, les processus automatisés et les outils adaptés, il permet de construire des applications non seulement livrées rapidement, mais fondamentalement plus résilientes. Il s'agit de rendre la sécurité omniprésente, mais aussi la plus transparente et la moins contraignante possible, pour que chaque développeur devienne le premier défenseur de son code.
Extia : Un écosystème d'expertise et de partage
L'intervention de Rémy Vilain illustre parfaitement la culture d'Extia : encourager l'apprentissage continu et le partage d'expertise. C'est l'ADN de la société et en particulier de nos communautés métiers, des moments d'échange où nos consultants peuvent monter en compétences, veiller sur les nouvelles technologies comme le DevSecOps, et partager leurs retours d'expérience. Ce lien avec l'apprentissage se matérialise aussi par notre forte implication dans l'écosystème local, et notamment auprès des écoles qui forment les talents de demain. Nous sommes fiers de collaborer avec des établissements comme l'ENI, Epitech, Inov ou encore le CESI au sein du bassin nantais. Nos consultants s'investissent à travers :
- Des interventions de coaching sur la préparation de CV et l'optimisation de profils LinkedIn.
- Des présentations métier pour éclairer les étudiants sur la réalité du terrain.
- La participation à des jurys de mémoire pour évaluer et conseiller les futurs diplômés.
- L'organisation d'événements gaming, car nous croyons aussi à l'apprentissage et à la cohésion par le jeu.
Rejoignez l'aventure DevOps à Nantes !
L'expertise de nos consultants est le moteur de notre développement. Nous sommes constamment à la recherche de nouveaux talents pour accompagner nos clients dans leurs défis de demain. Nous avons actuellement plusieurs opportunités ouvertes dans la région nantaise, notamment pour des postes de :
Si vous souhaitez, comme Rémy, évoluer dans un environnement qui valorise l'expertise, le partage et l'innovation, n'hésitez pas à consulter nos offres et à nous contacter.