Les 6 pilliers du DevSecOps
La Cloud Security Alliance (CSA), principale organisation mondiale dédiée à la définition de normes, de certifications et de meilleures pratiques pour garantir un environnement de cloud computing sécurisé, a publié un document définissant les Six piliers de DevSecOps.
Ces six items correspondent aux domaines de concentration essentiels à la bonne intégration du DevSecOps dans une organisation:
Contenu
Responsabilité collective
Il est primordial que chaque acteur du DevSecOps ait conscience de sa responsabilité et de sa contribution à la sécurité au sein de son organisation.
La maitrise d’ouvrage et les développeurs d’une application doivent être les premiers contributeurs à la sécurité d’une application comme ils en connaissent son contexte et ses risques.
Ils doivent être impliqués dans les processus de sécurisation d’une application de bout en bout et pas seulement être sensibilisés à la sécurité car ils constituent une première ligne de défense (de la logique métier et de la donnée par exemple).
Collaboration et intégration
La mise en place d’une culture de sécurité et de collaboration est nécessaire pour que les membres de toutes les équipes fonctionnelles puissent exprimer leurs besoins en termes de sécurité mais aussi signaler les anomalies potentielles.
Le but ici est de pouvoir définir et adapter les risques, et les contrôles associés, sur l’ensemble du cycle de vie d’une application.
Implémentation pragmatique
La base est d’implémenter un modèle de sécurité et de confidentialité numérique, indépendant de la technologie, mais qui se concentre uniquement sur l’activité de développement d’applications.
Cela doit permettre à l’organisation d’aborder les sujets de sécurité de manière efficace et adaptée dans une méthodologie DevOps.
Rapprocher conformité et développement
Afin de combler l’écart entre la conformité et le développement, il faut réussir à traduire simplement les contrôles nécessaires à appliquer aux composants logiciels.
Ces contrôles devront être quantifiables pour le suivi, automatisés autant que possible et appliqués aux bonnes étapes du cycle de développement en fonction des éléments à vérifier.
Automatisation
Pour augmenter la qualité d’une application, il suffit d’améliorer la rigueur, le timing et la fréquence des tests de conformité, sécurité, configuration, non-régression, fonctionnels, etc.
Pour ce faire, tout ce qui est automatisable doit l’être ou le devenir et tous les processus qui ne le sont pas seront à repenser car non-conforme à la démarche DevSecOps.
Mesurer, monitorer, rapporter et agir
Afin de réussir une démarche DevSecOps, le développement logiciel et la production doivent être continuellement suivis avec les critères de mesure appropriés.
Le but est de faciliter l’intervention des bons acteurs aux moments nécessaires en fonction des événements de la vie courante applicative.
———
En conclusion, cette approche du DevSecOps en six points majeurs doit permettre d’identifier rapidement les chantiers à entreprendre afin de décloisonner les métiers et faciliter une approche Security By Design. Elle a également pour but de simplifier l’intégration de la sécurité dans une démarche DevOps en se basant à la fois sur des aspects collaboratifs et humains mais aussi sur des contrôles techniques et fonctionnels dans un but d’amélioration continue des applications produites.