Schița de curs

1. Concepte și domeniu de aplicare al analizei staticale a codului

  • Definiții: analiza statică, SAST, categorii de reguli și severitate
  • Domeniu de aplicare al analizei statice în SDLC securizată și acoperirea riscurilor
  • Cum SonarQube se integrează cu controalele de securitate și fluxurile de lucru ale dezvoltatorilor

2. Prezentare generală a SonarQube: caracteristici și arhitectură

  • Servicii core, bază de date și componente de scanner
  • Bariere de calitate (Quality Gates), profile de calitate (Quality Profiles) și cele mai bune practici pentru Bariere de Calitate
  • Caracteristici legate de securitate: vulnerabilități, reguli SAST și mapearea CWE

3. Navigare și utilizarea interfeței UI a serverului SonarQube

  • Tur prin interfața de server: proiecte, probleme, reguli, măsuratori și vederi de guvernanță
  • Interpretarea paginilor cu probleme, trasabilitatea și orientările pentru remediere
  • Generarea de rapoarte și opțiuni de export

4. Configurarea SonarScanner cu instrumente de compilare

  • Configurarea SonarScanner pentru Maven, Gradle, Ant și MSBuild
  • Cele mai bune practici pentru proprietățile scannerului, excluderi și proiectele cu mai multe module
  • Generarea datelor de test necesare și a rapoartelor de acoperire pentru o analiză precisă

5. Integrarea cu Azure DevOps

  • Configurarea conexiunilor de serviciu SonarQube în Azure DevOps
  • Adăugarea sarcinilor SonarQube la Azure Pipelines și decorarea PR (Pull Requests)
  • Importul depozitelor Azure în SonarQube și automatizarea analizelor

6. Configurarea proiectului și analizatoarele de părți terțe

  • Profile de calitate la nivel de proiect și selecția regulilor pentru Java și Angular
  • Lucrul cu analizatoare de părți terțe și ciclul de viață al pluginurilor
  • Definirea parametrilor de analiză și a moștenirii parametrilor

7. Roluri, responsabilități și revizuirea metodei de dezvoltare securizată

  • Separarea rolurilor: dezvoltatori, revisori, DevOps, proprietari de securitate
  • Construirea unei matrice de roluri și responsabilități pentru procesele CI/CD
  • Procesul de revizuire și recomandare pentru o metodologie existentă de dezvoltare securizată

8. Avansat: adăugarea regulilor, ajustarea și îmbunătățirea caracteristicilor globale de securitate

  • Folosirea API-ului Web al SonarQube pentru a adăuga și gestiona reguli personalizate
  • Ajustarea Barierelor de Calitate și aplicarea automată a politicilor
  • Consolidarea securității serverului SonarQube și cele mai bune practici privind controlul accesului

9. Sesiuni de laborator practice (aplicate)

  • Laborator A: Configurarea SonarScanner pentru 5 depozite Java (Quarkus unde este aplicabil) și analizarea rezultatelor
  • Laborator B: Configurarea analizei Sonar pentru un frontend Angular și interpretarea constatărilor
  • Laborator C: Laborator complet de pipeline—integrarea SonarQube cu un pipeline Azure DevOps și activarea decorării PR (Pull Requests)

10. Testare, depanare și interpretarea rapoartelor

  • Strategii pentru generarea datelor de test și măsurarea acoperirii
  • Probleme comune și depanarea erorilor de scanner, pipeline și permisiuni
  • Cum să citiți și prezentați rapoartele SonarQube pentru stakeholderi tehnici și nitehnici

11. Cele mai bune practici și recomandări

  • Selectarea seturilor de reguli și strategii de aplicare incrementală
  • Cele mai bune practici pentru fluxuri de lucru ale dezvoltatorilor, revisorilor și pipeline-urilor de compilare
  • Roadmap pentru scalarea SonarQube în medii enterprise

Rezumat și următori pași

Cerințe

  • O înțelegere a ciclului de viață al dezvoltării software
  • Experiență cu controlul sursei și conceptele CI/CD de bază
  • Familiarizare cu medii de dezvoltare Java sau Angular

Audience

  • Dezvoltatori (Java / Quarkus / Angular)
  • Ingineri DevOps și CI/CD
  • Ingineri de securitate și verificatori de securitate a aplicațiilor
 21 ore

Numărul de participanți


Pret per participant

Mărturii (1)

Cursuri viitoare

Categorii înrudite