Le défi : intégrer la sécurité au cycle de développement logiciel
L’équipe informatique de Pearson savait qu’elle devait faire de la sécurité du développement une priorité pour préserver sa réputation de marque éducative de confiance à l’ère du numérique. C’est pourquoi l’entreprise a constitué une équipe chargée d’intégrer les bonnes pratiques de sécurité à l’ensemble du cycle de développement logiciel (SDLC).
« Une transformation DevOps était déjà en cours, a expliqué Nicholas Vinson, responsable DevSecOps chez Pearson. L’entreprise savait qu’elle voulait adopter une approche shift left et intégrer la sécurité dès la conception, mais elle souhaitait créer une équipe capable de le faire. C’est pour cela que nous avons été recrutés. »
La solution : donner aux développeurs les moyens de prendre eux-mêmes en charge la sécurité
La nouvelle équipe de sécurité de Pearson ne comptait que six personnes. Il n’était donc pas réaliste qu’elle prenne elle-même en charge l’ensemble des tâches de sécurité pour 300 équipes de développement. Pearson avait donc besoin d’une solution permettant aux développeurs de prendre eux-mêmes en charge la sécurité. L’entreprise a choisi Snyk pour déployer à grande échelle l’analyse des dépendances dans de nombreuses applications à travers le monde.
« Avec seulement quelques ingénieurs dans notre équipe de sécurité, nous ne pouvons pas configurer et gérer Snyk pour chacune de ces équipes, explique Paul Graziano, ingénieur DevSecOps chez Pearson. Il nous fallait donc une approche et une solution évolutives et autonomes. Les équipes de développement ont aussi des niveaux de compétence variés et une maturité DevOps différente ; notre approche devait donc être aussi simple que possible. »
L’approche de Snyk, pensée pour les développeurs, en faisait une plateforme bien adaptée à Pearson. La capacité de Snyk à s’intégrer à de nombreux outils de gestion des dépendances était essentielle pour déployer la plateforme dans des centaines d’applications reposant sur des piles technologiques différentes. De plus, comme Snyk s’intégrait facilement aux pipelines CI/CD automatisés des équipes de développement, il était plus facile de les faire adhérer à cette nouvelle approche DevSecOps.
Concrétiser le DevSecOps
L’équipe DevSecOps a privilégié une approche en libre-service et veillé à ce que les développeurs disposent de tout le nécessaire pour intégrer Snyk aux outils propres à leur équipe. Grâce à Microsoft Forms, l’équipe d’ingénierie de sécurité disposait facilement de toutes les informations nécessaires pour intégrer rapidement les nouveaux développeurs à la plateforme. Elle a également créé des vidéos de formation pour aider les développeurs de Pearson à comprendre en quoi consiste l’analyse des dépendances, comment l’utiliser et comment interpréter les résultats.
Une fois les développeurs en mesure d’utiliser la plateforme, l’équipe DevSecOps a voulu s’assurer qu’ils savaient également résoudre rapidement les problèmes. La fonctionnalité de correction automatisée de Snyk hiérarchise les vulnérabilités afin de réduire le nombre d’actions nécessaires aux développeurs pour les corriger. Pearson diminue ainsi son exposition aux risques liés aux dépendances obsolètes, aux nouvelles vulnérabilités de sécurité et aux problèmes de licences.
« Les équipes peuvent être un peu déconcertées lorsqu’elles se connectent à Snyk et découvrent des centaines de vulnérabilités, explique Graziano. Nous les encourageons donc à examiner les correctifs plutôt que chaque problème individuellement. Une seule mise à niveau de dépendance peut corriger 20 à 30 vulnérabilités. Les équipes peuvent ainsi agir plus facilement. »
Les résultats : déployer le DevSecOps à grande échelle
La plateforme Snyk permet désormais à l’équipe de sécurité de suivre facilement des indicateurs utiles dans tous les projets de développement. L’entreprise peut ainsi proposer à tous ses services une sécurité en libre-service, tout en assurant une supervision centralisée. Les ingénieurs en sécurité peuvent ainsi vérifier que les équipes de développement progressent dans la détection et la résolution des problèmes sans avoir à intervenir directement auprès de chacune d’elles.
« L’amélioration continue est importante dans tout ce que nous faisons, a déclaré Vinson. Nous ne voulons pas rester immobiles. Nous cherchons toujours à faire le point, à tirer des enseignements de notre travail, puis à l’améliorer. »
Pearson a déployé le DevSecOps à grande échelle dans ses équipes de développement, mais l’entreprise sait aussi que les processus et la documentation mis en place doivent évoluer continuellement pour tenir compte des problèmes auxquels l’organisation sera confrontée à l’avenir. Avec l’aide de partenaires de confiance comme Snyk, Pearson espère continuer à développer et à affiner ses méthodes DevSecOps.
« L’avantage de travailler avec un fournisseur plutôt qu’avec une solution open source, c’est que nous pouvons influer sur sa feuille de route et suggérer des fonctionnalités qui nous facilitent la vie, explique Graziano. La fonctionnalité de stratégie de groupe que Snyk est en train de mettre en place en est un exemple. Après l’intégration aux pipelines, l’étape suivante consiste à ajouter des contrôles qualité dans le pipeline de compilation afin de gérer de manière centralisée les règles déterminant quand bloquer une compilation. Cette fonctionnalité nous sera très utile lorsqu’elle sera disponible. »
