Plan du cours
1. Concepts et périmètre de l’analyse statique de code
- Définitions : analyse statique, SAST, catégories de règles et niveaux de sévérité
- Périmètre de l’analyse statique dans un SDLC sécurisé et couverture des risques
- Place de SonarQube dans les contrôles de sécurité et les flux de travail des développeurs
2. Présentation de SonarQube : fonctionnalités et architecture
- Services principaux, base de données et composants du scanneur
- Quality Gates (portes de qualité), Quality Profiles (profils de qualité) et bonnes pratiques
- Fonctionnalités liées à la sécurité : vulnérabilités, règles SAST et cartographie CWE
3. Navigation et utilisation de l’interface utilisateur du serveur SonarQube
- Visite guidée de l’interface utilisateur du serveur : projets, problèmes, règles, mesures et vues de gouvernance
- Interprétation des pages de problèmes, traçabilité et guidance pour la correction
- Génération et options d’exportation des rapports
4. Configuration de SonarScanner avec les outils de build
- Mise en place de SonarScanner pour Maven, Gradle, Ant et MSBuild
- Bonnes pratiques pour les propriétés du scanneur, exclusions et projets multi-modules
- Génération des données de test et des rapports de couverture nécessaires pour une analyse précise
5. Intégration avec Azure DevOps
- Configuration des connexions de service SonarQube dans Azure DevOps
- Ajout de tâches SonarQube aux Azure Pipelines et décoration des Pull Requests
- Importation des Azure Repos dans SonarQube et automatisation des analyses
6. Configuration des projets et analyseurs tiers
- Profils de qualité au niveau du projet et sélection de règles pour Java et Angular
- Travail avec des analyseurs tiers et cycle de vie des plugins
- Définition des paramètres d’analyse et héritage des paramètres
7. Rôles, responsabilités et revue de la méthodologie de développement sécurisé
- Séparation des rôles : développeurs, réviseurs, DevOps, responsables sécurité
- Construction d’une matrice des rôles et responsabilités pour les processus CI/CD
- Revue et processus de recommandation pour une méthodologie de développement sécurisé existante
8. Avancé : Ajout de règles, ajustements et renforcement des fonctionnalités de sécurité globales
- Utilisation de l’API Web SonarQube pour ajouter et gérer des règles personnalisées
- Ajustement des Quality Gates et application automatisée des politiques
- Renforcement de la sécurité du serveur SonarQube et bonnes pratiques de contrôle d’accès
9. Ateliers pratiques (Application)
- Atelier A : Configurer SonarScanner pour 5 dépôts Java (Quarkus le cas échéant) et analyser les résultats
- Atelier B : Configurer l’analyse Sonar pour une application front-end Angular et interpréter les constats
- Atelier C : Atelier pipeline complet — intégrer SonarQube à un pipeline Azure DevOps et activer la décoration des Pull Requests
10. Tests, dépannage et interprétation des rapports
- Stratégies pour la génération de données de test et la mesure de la couverture
- Problèmes courants et dépannage des erreurs de scanneur, de pipeline et de permissions
- Comment lire et présenter les rapports SonarQube aux parties prenantes techniques et non techniques
11. Bonnes pratiques et recommandations
- Sélection des ensembles de règles et stratégies d’application progressive
- Recommandations de workflow pour les développeurs, les réviseurs et les pipelines de build
- Feuille de route pour la mise à l’échelle de SonarQube dans les environnements d’entreprise
Synthèse et prochaines étapes
Pré requis
- Compréhension du cycle de vie du développement logiciel
- Expérience avec le contrôle de version et les concepts de base du CI/CD
- Familiarité avec les environnements de développement Java ou Angular
Public cible
- Développeurs (Java / Quarkus / Angular)
- Ingénieurs DevOps et CI/CD
- Ingénieurs de la sécurité et auditeurs de sécurité applicative
Nos clients témoignent (1)
Engageant et pratique approfondie.
Balavignesh Elumalai - Scottish Power
Formation - SonarQube for DevOps
Traduction automatique