Struttura del corso
1. Concetti e ambito dell'analisi statica del codice
- Definizioni: analisi statica, SAST, categorie di regole e gravità
- Ambito dell'analisi statica nel ciclo di vita sicuro dello sviluppo software (SDLC) e copertura dei rischi
- Come SonarQube si integra nei controlli di sicurezza e nei flussi di lavoro degli sviluppatori
2. Panoramica di SonarQube: funzionalità e architettura
- Servizi principali, database e componenti scanner
- Qualità Gates, Quality Profiles e best practice per i Quality Gates
- Funzionalità relative alla sicurezza: vulnerabilità, regole SAST e mappatura CWE
3. Navigazione e utilizzo dell'interfaccia utente del server SonarQube
- Tour dell'interfaccia utente del server: progetti, problemi, regole, misurazioni e visualizzazioni di governance
- Interpretazione delle pagine dei problemi, tracciabilità e indicazioni per la risoluzione
- Generazione e opzioni di esportazione dei report
4. Configurazione di SonarScanner con strumenti di compilazione
- Configurazione di SonarScanner per Maven, Gradle, Ant e MSBuild
- Best practice per le proprietà dello scanner, esclusioni e progetti multi-modulo
- Generazione dei dati di test necessari e report di copertura per un'analisi accurata
5. Integrazione con Azure DevOps
- Configurazione delle connessioni del servizio SonarQube in Azure DevOps
- Aggiunta di attività SonarQube a Azure Pipelines e decorazione PR
- Importazione di Azure Repos in SonarQube e automazione delle analisi
6. Configurazione del progetto e analizzatori di terze parti
- Quality Profiles a livello di progetto e selezione delle regole per Java e Angular
- Lavorare con gli analizzatori di terze parti e il ciclo di vita dei plugin
- Definizione dei parametri di analisi e ereditarietà dei parametri
7. Ruoli, responsabilità e revisione della metodologia di sviluppo sicuro
- Separazione dei ruoli: sviluppatori, revisori, DevOps, proprietari della sicurezza
- Costruzione di una matrice dei ruoli e delle responsabilità per i processi CI/CD
- Processo di revisione e raccomandazione per una metodologia esistente di sviluppo sicuro
8. Avanzato: aggiunta di regole, tuning e miglioramento delle funzionalità globali di sicurezza
- Utilizzo dell'API Web SonarQube per aggiungere e gestire regole personalizzate
- Adeguiamento dei Quality Gates e applicazione automatica delle politiche
- Rafforzamento della sicurezza del server SonarQube e best practice di controllo degli accessi
9. Sessioni di laboratorio pratiche (applicate)
- Laboratorio A: Configurare SonarScanner per 5 repository Java (Quarkus laddove applicabile) e analizzare i risultati
- Laboratorio B: Configurare l'analisi Sonar per un front-end Angular e interpretare i risultati
- Laboratorio C: Laboratorio di pipeline completo—integrare SonarQube con una pipeline Azure DevOps e abilitare la decorazione PR
10. Test, risoluzione dei problemi e interpretazione dei report
- Strategie per la generazione di dati di test e misurazione della copertura
- Problemi comuni e risoluzione dei problemi dello scanner, delle pipeline e dei permessi
- Come leggere e presentare i report SonarQube a stakeholder tecnici e non tecnici
11. Best practice e raccomandazioni
- Selezione del set di regole e strategie di applicazione incrementale
- Raccomandazioni per i flussi di lavoro degli sviluppatori, revisori e pipeline di compilazione
- Pianificazione per la scalabilità di SonarQube in ambienti aziendali
Riepilogo e passi successivi
Requisiti
- Una comprensione del ciclo di vita dello sviluppo software
- esperienza con il controllo delle versioni e i concetti di base di CI/CD
- familiarità con gli ambienti di sviluppo Java o Angular
Pubblico di Riferimento
- Sviluppatori (Java / Quarkus / Angular)
- Ingegneri DevOps e CI/CD
- Ingegneri di sicurezza e revisori della sicurezza delle applicazioni
Recensioni (1)
Interattivo e con pratica diretta.
Balavignesh Elumalai - Scottish Power
Corso - SonarQube for DevOps
Traduzione automatica