Account Connexion
Jump to section

Le DevSecOps, qu'est-ce que c'est ?

Copier l'URL

Le « DevSecOps » désigne à la fois le développement, la sécurité et l'exploitation. C'est une approche de la culture, de l'automatisation et de la conception des plateformes qui intègre la sécurité en tant que responsabilité partagée tout au long du cycle de vie informatique.

Le modèle DevOps ne s'adresse pas uniquement aux équipes de développement et d'exploitation. Si vous souhaitez tirer pleinement parti de l'agilité et de la réactivité d'une approche DevOps, vous devez également intégrer la sécurité informatique au cycle de vie complet de vos applications.

Pourquoi ? Par le passé, les processus liés à la sécurité étaient isolés et confiés à une équipe spécifique, à l'étape finale du développement. Cela ne posait pas de problème à une époque où les cycles de développement duraient des mois, voire des années. Mais cette époque est révolue. Si une approche DevOps efficace garantit des cycles de développement rapides et fréquents (parfois quelques semaines ou jours), des pratiques de sécurité dépassées peuvent réduire à néant les bénéfices des projets DevOps les plus efficaces.

DevSecOps vs DevOps

À présent, dans le cadre de travail collaboratif du modèle DevOps, la sécurité est une responsabilité partagée, intégrée du début à la fin. Cette notion est si importante qu'elle a donné naissance à l'expression « DevSecOps » pour souligner la nécessité d'intégrer la sécurité aux projets DevOps.

DevSecOps

L'approche DevSecOps implique de réfléchir à la sécurité des applications et de l'infrastructure dès le départ. Il convient également d'automatiser certaines passerelles de sécurité afin d'éviter tout ralentissement des workflows DevOps. Pour atteindre ces objectifs, il faut commencer par sélectionner les outils capables d'assurer l'intégration continue de la sécurité, par exemple avec un environnement de développement intégré commun qui offre des fonctions de sécurité. Toutefois, pour que la sécurité DevOps soit efficace, il faut bien plus que de nouveaux outils. Il est nécessaire de mettre en œuvre les changements culturels du DevOps au sein des équipes chargées de la sécurité, et ce, au plus tôt.

Que l'approche soit nommée « DevOps » ou « DevSecOps », il a toujours été préférable de faire de la sécurité une partie intégrante du cycle de vie des applications. L'approche DevSecOps repose sur une sécurité intégrée et non sur un périmètre de sécurité qui protège les applications et les données. Lorsque la sécurité est reléguée à la fin du processus de développement, les entreprises qui adoptent l'approche DevOps peuvent se retrouver confrontées à de longs cycles de développement, ce qu'elles essayaient justement d'éviter.

Le DevSecOps met notamment en évidence la nécessité d'impliquer les équipes chargées de la sécurité et les partenaires dès le début des projets DevOps, en vue d'y intégrer les fonctions de sécurité des informations et de planifier l'automatisation de cette sécurité. Cette approche souligne également la nécessité d'aider les développeurs à coder en gardant la sécurité à l'esprit. Pour ce faire, les équipes de sécurité doivent partager la visibilité dont elles bénéficient, ainsi que leurs commentaires et leurs informations sur les menaces identifiées, telles que les menaces internes ou les logiciels malveillants. Comme la sécurité n'a pas toujours été considérée comme une priorité dans le développement d'applications traditionnel, il peut être utile de proposer des formations en la matière aux développeurs.

En quoi consiste réellement la sécurité intégrée ? Pour commencer, une bonne stratégie DevSecOps implique de déterminer la tolérance aux risques et de réaliser une analyse des risques/bénéfices. Combien de contrôles de sécurité nécessite une application donnée ? Quelle est l'importance de la rapidité de mise sur le marché pour les différentes applications ? Puisque l'exécution de contrôles de sécurité manuels peut prendre beaucoup de temps, l'automatisation des tâches répétées est un élément clé de l'approche DevSecOps.

Voici les objectifs à atteindre : conserver des cycles de développement courts et fréquents, intégrer des mesures de sécurité aux processus d'exploitation avec un minimum d'interruptions, rester en phase avec les technologies novatrices telles que les conteneurs et les microservices, tout en encourageant une collaboration plus étroite entre les équipes habituellement isolées. Cela représente un défi de taille pour les entreprises. Toutes ces initiatives débutent au niveau humain, avec les tenants et aboutissants de la collaboration au sein de votre entreprise. Pour faciliter l'évolution des comportements dans le cadre du DevSecOps, il existe une solution : l'automatisation.

Sécurité DevOps

Mais que faut-il automatiser ? Et comment procéder ? Les réponses à ces questions se trouvent dans ce guide. Les entreprises doivent prendre du recul et considérer l'ensemble de l'environnement de développement et d'exploitation, notamment : les référentiels de contrôle des sources, les registres de conteneurs, le pipeline d'intégration et de déploiement continus (CI/CD), la gestion des API, l'automatisation de l'orchestration et des versions, ainsi que la gestion et la surveillance de l'exploitation.

Les nouvelles technologies d'automatisation ont aidé les entreprises à adopter des pratiques de développement plus agiles, et ont par ailleurs joué un rôle dans les progrès réalisés en matière de mesures de sécurité. Cela dit, l'automatisation n'est pas le seul domaine du paysage informatique qui ait changé au cours de ces dernières années. En effet, les technologies cloud-native, telles que les conteneurs et les microservices, font désormais partie intégrante de la plupart des projets DevOps, et les stratégies de sécurité DevOps doivent s'y adapter.

Les infrastructures plus étendues et plus dynamiques, qui ont vu le jour grâce aux conteneurs, ont totalement transformé les méthodes de travail de nombreuses entreprises. De ce fait, les pratiques de sécurité DevOps doivent s'adapter au nouveau paysage informatique et s'aligner sur les recommandations de sécurité propres aux conteneurs.

Les technologies cloud-native ne sont pas compatibles avec les listes de vérification et les politiques de sécurité statiques. La sécurité doit au contraire être continue et intégrée à chaque étape du cycle de vie de l'application et de l'infrastructure.

Le modèle DevSecOps implique d'intégrer la sécurité au processus de développement des applications, du début à la fin. Ceci nécessite d'une part de nouveaux outils et, d'autre part, l'adoption d'une nouvelle culture d'entreprise. Les équipes DevOps doivent automatiser la sécurité pour protéger l'environnement global et les données, ainsi que le processus d'intégration et de distribution continue. Pour ce faire, elles devront probablement aussi sécuriser les microservices dans des conteneurs.

Grâce à cette série de webinars, profitez du point de vue de spécialistes de la sécurité pour le cycle de vie et la pile d'applications conteneurisées.

Sécurité de l'environnement et des données

  • Standardiser et automatiser l'environnement : chaque service devrait disposer d'un minimum de privilèges, afin de limiter les connexions et accès non autorisés.
  • Centraliser les identités d'utilisateurs et les fonctionnalités de contrôle d'accès : ces mécanismes stricts de contrôle d'accès et d'authentification centralisée sont indispensables à la sécurisation des microservices, puisque l'authentification est déclenchée en plusieurs points.

  • Isoler les conteneurs qui exécutent des microservices les uns des autres et du réseau : ces mesures s'appliquent aux données en transit et au repos, étant donné que ces deux types de données sont des cibles très prisées des pirates.

  • Chiffrer les données entre les applications et les services : une plateforme d'orchestration de conteneurs avec fonctions de sécurité intégrées permet de minimiser le risque d'accès non autorisé.

  • Introduire des passerelles d'API sécurisées : les API sécurisées améliorent la visibilité sur les autorisations et les routages. En réduisant le nombre d'API exposées, les entreprises peuvent réduire leurs surfaces d'attaques.

Sécurité des processus CI/CD

  • Intégrer des analyseurs de sécurité pour les conteneurs : cette démarche devrait faire partie du processus d'ajout de conteneurs au registre.

  • Automatiser les tests de sécurité dans le processus CI : cette démarche implique l'exécution d'outils d'analyse statique de la sécurité dans le cadre du processus de création des versions, ainsi que l'analyse de toute image de conteneur préconçu, afin d'identifier les failles de sécurité connues avant leur ajout au pipeline de versions.

  • Ajouter des tests automatisés de la sécurité au processus de test d'acceptation : il faut automatiser les tests de validation d'entrée, ainsi que les fonctions d'authentification et d'autorisation de vérification.

  • Automatiser les mises à jour de sécurité, comme les correctifs pour les failles connues : à réaliser dans le pipeline DevOps. Cette approche devrait permettre aux administrateurs de ne plus avoir à se connecter à des systèmes de production, tout en créant un journal des modifications documenté et traçable.

  • Automatiser les capacités de gestion de configuration des systèmes et des services : cette approche permet d'assurer la conformité vis-à-vis des politiques de sécurité et élimine par ailleurs les erreurs manuelles. Les audits et corrections devraient également être automatisés.

Lectures recommandées

Livre numérique

Modernisez et sécurisez le cycle de vie des applications grâce au DevSecOps

Aperçu de solution

Comment déployer une solution DevSecOps complète

Checklist

5 manières de mettre en œuvre le DevSecOps grâce à l'automatisation

Étude de cas

Airbus s'appuie sur le DevOps pour créer une plateforme lors d'un stage Open Innovation Labs

Pour aller plus loin

ARTICLE

Le DevSecOps, qu'est-ce que c'est ?

Si vous souhaitez tirer pleinement parti de l'agilité et de la réactivité d'une approche DevOps, vous devez également intégrer la sécurité informatique au cycle de vie complet de vos applications.

ARTICLE

L'approche CI/CD, qu'est-ce que c'est ?

L'approche CI/CD garantit une automatisation et une surveillance continues tout au long du cycle de vie des applications, des phases d'intégration et de test jusqu'à la distribution et au déploiement.

ARTICLE

Un ingénieur DevOps, qu'est-ce que c'est ?

Un ingénieur DevOps possède un ensemble unique de compétences et de connaissances qui favorisent la collaboration, l'innovation et le changement culturel au sein d'une entreprise.  

En savoir plus sur le DevOps

Produits

Red Hat Open Innovation Labs

Stage intensif et spécialisé auprès d'experts Red Hat ayant pour objectif de vous former à l'utilisation d'une méthode agile et d'outils Open Source en vue de résoudre les problèmes métier de votre entreprise.

Red Hat Consulting

Contrats avec des conseillers stratégiques qui prennent en considération tous les tenants et les aboutissants de votre entreprise, analysent les défis auxquels vous êtes confrontés et vous aident à les relever avec des solutions complètes et économiques.

Ressources

Liste de contrôle

L'automatisation d'entreprise selon le modèle DevOps

Étude de cas

Airbus s'appuie sur le DevOps pour créer une plateforme lors d'un stage Open Innovation Labs

Illustration - mail

Ce type de contenu vous intéresse ?

Inscrivez-vous à notre newsletter Red Hat Shares.

Red Hat logo LinkedInYouTubeFacebookTwitter

Produits

Outils

Tester, acheter, vendre

Communication

À propos de Red Hat

Premier éditeur mondial de solutions Open Source pour les entreprises, nous fournissons des technologies Linux, cloud, de conteneurs et Kubernetes. Nous proposons des solutions stables qui aident les entreprises à jongler avec les divers environnements et plateformes, du cœur du datacenter à la périphérie du réseau.

Inscrivez-vous à la newsletter Red Hat Shares.

S'inscrire maintenant

Sélectionner une langue

© 2022 Red Hat, Inc. Red Hat Summit