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 sévérité
- Portée de l'analyse statique dans le SDLC sécurisé et la couverture des risques
- Comment SonarQube s'intègre aux contrôles de sécurité et aux flux de travail des développeurs
2. Aperçu de SonarQube : fonctionnalités et architecture
- Services principaux, base de données et composants d'analyseur
- Barrages de qualité, profils de qualité et meilleures pratiques des barrages de qualité
- 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
- Tourné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 guide de remédiation
- Génération de rapports et options d'exportation
4. Configuration de SonarScanner avec les outils de build
- Configuration de SonarScanner pour Maven, Gradle, Ant et MSBuild
- Meilleures pratiques pour les propriétés de l'analyseur, exclusions et projets multi-modules
- Génération des données de test nécessaires et rapports de couverture 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 à Azure Pipelines et décoration des PR
- Importation de dépôts Azure 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
- Travail avec les analyseurs tiers et le 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, reviewers, DevOps, propriétaires de sécurité
- Construction d'une matrice de rôles et responsabilités pour les processus CI/CD
- Processus de revue et recommandations pour une méthodologie de développement sécurisé existante
8. Avancé : ajout de règles, ajustement 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 barrages de qualité et application automatique des politiques
- Sécurisation du serveur SonarQube et meilleures pratiques de contrôle d'accès
9. Séances de laboratoire pratiques (appliquées)
- Laboratoire A : Configurer SonarScanner pour 5 dépôts Java (Quarkus si applicable) et analyser les résultats
- Laboratoire B : Configurer l'analyse Sonar pour 1 front-end Angular et interpréter les résultats
- Laboratoire C : Laboratoire de pipeline complet—intégrer SonarQube dans 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 couverture
- Problèmes courants et dépannage des erreurs d'analyseur, 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 de l'ensemble de règles et stratégies d'application incrémentielle
- Recommandations de workflow pour les développeurs, reviewers et pipelines de build
- Roadmap pour l'évolution de SonarQube dans des environnements d'entreprise
Résumé et étapes suivantes
Pré requis
- Une compréhension du cycle de vie du développement logiciel
- Une expérience avec le contrôle de version et les concepts de base de l'intégration continue (CI) et de la livraison continue (CD)
- Une familiarité avec les environnements de développement Java ou Angular
Public cible
- Développeurs (Java / Quarkus / Angular)
- Ingénieurs DevOps et ingénieurs CI/CD
- Ingénieurs de sécurité et examineurs de la sécurité des applications
Nos clients témoignent (1)
Engagant et des exercices pratiques.
Balavignesh Elumalai - Scottish Power
Formation - SonarQube for DevOps
Traduction automatique