Plan du cours
1. Concepts et portée de l’analyse statique du code
- Définitions : analyse statique, SAST, catégories de règles et niveaux de sévérité
- Portée de l’analyse statique dans le SDLC sécurisé et couverture des risques
- Rôle de SonarQube dans les contrôles de sécurité et les flux de travail des développeurs
2. Aperçu de SonarQube : fonctionnalités et architecture
- Services de base, base de données et composants du scanner
- Portes de qualité, profils de qualité et bonnes pratiques associées
- Fonctionnalités liées à la sécurité : vulnérabilités, règles SAST et correspondance CWE
3. Navigation et utilisation de l’interface utilisateur du serveur SonarQube
- Visite guidée de l’interface : projets, problèmes, règles, mesures et vues de gouvernance
- Interprétation des pages de problèmes, traçabilité et conseils de correction
- Génération et exportation de rapports
4. Configuration de SonarScanner avec les outils de build
- Mise en place de SonarScanner pour Maven, Gradle, Ant et MSBuild
- Meilleures pratiques pour les propriétés du scanner, exclusions et projets multi-modules
- Génération des données de test et des rapports de couverture nécessaires à 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 demandes de modification (PR)
- Importation d’Azure Repos dans SonarQube et automatisation des analyses
6. Configuration du projet et analyseurs tiers
- Profils de qualité au niveau du projet et sélection de règles pour Java et Angular
- Utilisation des analyseurs tiers et cycle de vie des plugins
- Définition des paramètres d’analyse et de leur héritage
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, ingénieurs DevOps, responsables de la sécurité
- Élaboration 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, réglages et amélioration 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 portes de qualité et application automatique des politiques
- Renforcement de la sécurité du serveur SonarQube et meilleures pratiques de contrôle d’accès
9. Séances de laboratoire pratiques (application)
- Laboratoire A : Configurer SonarScanner pour 5 dépôts Java (Quarkus le cas échéant) et analyser les résultats
- Laboratoire B : Configurer l’analyse Sonar pour un front-end Angular et interpréter les résultats
- Laboratoire C : Laboratoire de pipeline complet — intégrer SonarQube à un pipeline Azure DevOps et activer la décoration des PR
10. Tests, dépannage et interprétation des rapports
- Stratégies de génération de données de test et de mesure de la couverture
- Problèmes courants et dépannage des erreurs de scanner, de pipeline et de permissions
- Comment lire et présenter les rapports SonarQube aux parties prenantes techniques et non techniques
11. Meilleures pratiques et recommandations
- Sélection des ensembles de règles et stratégies d’application progressive
- Recommandations de flux de travail pour les développeurs, les réviseurs et les pipelines de build
- Roadmap pour l’échelle de SonarQube dans les environnements d’entreprise
Résumé et prochaines étapes
Pré requis
- Compréhension du cycle de vie de développement logiciel
- Expérience en contrôle de version et notions de base en CI/CD
- Familiarité avec les environnements de développement Java ou Angular
Public visé
- Développeurs (Java / Quarkus / Angular)
- Ingénieurs DevOps et CI/CD
- Ingénieurs de la sécurité et réviseurs de la sécurité des applications
Nos clients témoignent (1)
Engageant et pratique approfondie.
Balavignesh Elumalai - Scottish Power
Formation - SonarQube for DevOps
Traduction automatique