Activation de la conformité continue dans votre cycle de développement de logiciels d'application

Tirer parti de DevSecOps pour automatiser l'intégration de la sécurité à chaque phase du cycle de vie du développement des applications d'entreprise permet de résoudre les problèmes de sécurité dès leur apparition, ce qui les rend plus faciles, plus rapides et moins coûteux à résoudre. En utilisant l'architecture déployable DevSecOps Application Lifecycle Management, vous pouvez profiter des deux principaux avantages de l'utilisation de DevSecOps,, à savoir la rapidité et la sécurité.

Tout au long du cycle de développement, le code est examiné, analysé et testé pour les problèmes de sécurité. Cette sécurité intégrée permet à votre équipe de détecter rapidement les problèmes et de réduire les examens en double et les régénérations inutiles, ce qui permet d'obtenir un code plus sûr et plus rapide. Comme DevSecOps intègre l'analyse des vulnérabilités et l'application de correctifs dans le cycle de développement et de publication, la capacité d'identifier et de corriger les vulnérabilités et les expositions communes (CVE) est accrue. Cela limite la fenêtre qu'un acteur de menace doit utiliser pour tirer parti des vulnérabilités dans les systèmes de production publics. En outre, la conformité continue avec l'analyse périodique des applications en production est incluse.

L'implémentation de l'analyse et des tests automatisés permet de s'assurer que les dépendances logicielles incorporées sont à des niveaux de correctif appropriés et de confirmer que les logiciels passent les tests de l'unité de sécurité. De plus, il peut tester et valider le code pour la sécurité avec une analyse statique et dynamique. Les preuves des résultats de l'analyse sont stockées, collectées et récapitulées de manière sécurisée dans le cadre d'un processus de gestion des changements automatisé qui permet d'effectuer des déploiements avant que les modifications ne soient promues en production.

Examinez les sections suivantes pour avoir une vue d'ensemble des étapes essentielles pour garantir la sécurité du cycle de vie du développement de votre application en utilisant les outils IBM Cloud DevSecOps.

Configuration de votre architecture de développement de logiciels sécurisée

L'architecture déployable DevSecOps Application Lifecycle Management rationalise le processus de mise en place de votre chaîne d'approvisionnement logicielle sécurisée en utilisant un ensemble de modèles de chaînes d'outils d'intégration continue (CI), de déploiement continu (CD) et de conformité continue (CC). Ces modèles utilisent une collection d'intégrations d'outils et de pipelines Tekton de référence personnalisables pour construire, analyser, tester, gérer les changements et déployer les applications.

Les pipelines Tekton fournissent une infrastructure préfabriquée de scripts personnalisés que vous pouvez utiliser pour garantir l'orchestration conforme et automatisée des modifications de code et de configuration. Les pipelines gèrent un inventaire d'édition GitOps, tandis qu'ils collectent et stockent des informations collectées qui peuvent être utilisées pour générer des demandes de changement auditables. En outre, le pipeline de conformité continue analyse périodiquement les artefacts déployés et les référentiels de code source associés à la recherche de vulnérabilités.

Pour plus d'informations sur la configuration de l'architecture déployable en fonction de vos besoins, consultez le guide de déploiement DevSecOps. Vous pouvez utiliser un projet pour déployer cette architecture dans tous vos environnements de développement d'application, afin que votre équipe de développement puisse adopter une approche à gauche en identifiant les risques et les risques de sécurité de manière précoce, afin qu'ils soient traités avant que le code n'atteigne la production.

Assurer la conformité continue avec le pipeline CC

Les pipelines CI/CD garantissent que le code d'application développé par votre équipe est sécurisé et exempt de vulnérabilités avant que le code ne soit envoyé en production. Une fois que votre code atteint la production, vous pouvez utiliser le pipeline CC pour analyser en continu votre code de production à la recherche de nouvelles vulnérabilités. Le pipeline CC peut être déclenché manuellement ou périodiquement à l'aide de déclencheurs.

Le pipeline CC analyse les artefacts déployés existants et leurs référentiels source indépendamment de votre planification de déploiement. Il exécute les analyses statiques et dynamiques sur le code source de l'application, détecte les secrets dans les référentiels Git, la vérification de nomenclature (BOM), la vérification CIS et l'analyse Vulnerability Advisor.

Gestion des problèmes et collecte des informations collectées pour être prêt pour l'audit

Après avoir analysé et exécuté des vérifications sur les artefacts et les référentiels source, le pipeline crée un nouveau problème d'incident ou met à jour les problèmes d'incident existants dans le référentiel d'incidents. Enfin, à l'aide de ces problèmes et des résultats, le pipeline collecte des preuves et les récapitule.

Deux types de problèmes sont signalés à partir de vos pipelines d'EC et de CC: les problèmes d'incident et les problèmes non liés à l'incident. Des problèmes d'incident peuvent survenir en raison de vulnérabilités ou de CVE détectées dans le code ou dans les artefacts déployés, et les problèmes non incidents ne proviennent pas de vulnérabilités, mais représentent plutôt un écart par rapport à la situation de conformité, par exemple, des échecs de test d'unité et des échecs de vérification de la protection de branche. Pour plus d'informations sur la gestion des problèmes, voir Traitement des incidents et des problèmes non liés aux incidents et Gestion des problèmes liés aux incidents.

Les preuves de conformité créent la trace que les auditeurs recherchent lors d'un audit de conformité. L'un des objectifs de DevSecOps est d'automatiser la production et le stockage de preuves dans des demandes de changement vérifiables et des casiers de preuves durables. Pour plus d'informations, voir Informations collectées.