Kurzusleírás
1. A statikus kódelemzés fogalmai és hatóköre
- Fogalommeghatározások: statikus elemzés, SAST, szabálykategóriák és súlyosság
- A statikus elemzés hatóköre a biztonságos SDLC-ben és a kockázati lefedettség
- Hogyan illeszkedik a SonarQube a biztonsági kontrollokba és a fejlesztői munkafolyamatokba
2. SonarQube áttekintés: funkciók és architektúra
- Alapszolgáltatások, adatbázis és szkenner komponensek
- Quality Gates, Quality Profiles és a Quality Gates bevált gyakorlatai
- Biztonsággal kapcsolatos funkciók: sebezhetőségek, SAST szabályok és CWE hozzárendelés
3. Navigáció és a SonarQube szerver felhasználói felületének használata
- Szerver felhasználói felület áttekintése: projektek, problémák, szabályok, mérőszámok és irányítási nézetek
- A problémaoldalak, a nyomon követhetőség és a javítási útmutatók értelmezése
- Jelentéskészítési és exportálási lehetőségek
4. SonarScanner konfiguráció build eszközökkel
- A SonarScanner beállítása Maven, Gradle, Ant és MSBuild eszközökhöz
- Bevált gyakorlatok a szkenner tulajdonságaihoz, kizárásokhoz és többmodulos projektekhez
- A pontos elemzéshez szükséges tesztadatok és lefedettségi jelentések előállítása
5. Integráció az Azure DevOps szolgáltatással
- SonarQube szolgáltatáskapcsolatok konfigurálása az Azure DevOpsban
- SonarQube feladatok hozzáadása az Azure Pipelineshez és a PR dekoráció
- Azure Repos tárolók importálása a SonarQube-ba és az elemzések automatizálása
6. Projektkonfiguráció és harmadik féltől származó elemzők
- Projektszintű Quality Profiles és szabálykiválasztás Java és Angular esetén
- Munka harmadik féltől származó elemzőkkel és a bővítmények életciklusa
- Elemzési paraméterek és paraméteröröklés meghatározása
7. Szerepkörök, felelősségi körök és a biztonságos fejlesztési módszertan áttekintése
- Szerepkörök szétválasztása: fejlesztők, ellenőrök, DevOps, biztonsági felelősök
- Szerepkör- és felelősségi mátrix kialakítása a CI/CD folyamatokhoz
- Meglévő biztonságos fejlesztési módszertan felülvizsgálati és ajánlási folyamata
8. Haladó szint: szabályok hozzáadása, hangolás és a globális biztonsági funkciók fejlesztése
- A SonarQube Web API használata egyéni szabályok hozzáadására és kezelésére
- Quality Gates és automatizált szabályzatkikényszerítés módosítása
- A SonarQube szerver biztonságának megerősítése és a hozzáférés-vezérlés bevált gyakorlatai
9. Gyakorlati laborfoglalkozások (alkalmazott)
- A labor: SonarScanner konfigurálása 5 Java tárolóhoz (ahol alkalmazható, Quarkus) és az eredmények elemzése
- B labor: Sonar elemzés konfigurálása 1 Angular frontendhez és az eredmények értelmezése
- C labor: Teljes folyamat labor—a SonarQube integrálása egy Azure DevOps folyamattal és a PR dekoráció engedélyezése
10. Tesztelés, hibaelhárítás és jelentésértelmezés
- Stratégiák a tesztadat-előállításhoz és a lefedettségméréshez
- Gyakori problémák, valamint a szkenner-, folyamat- és jogosultsági hibák elhárítása
- A SonarQube jelentések olvasása és bemutatása technikai és nem technikai érdekelt felek számára
11. Bevált gyakorlatok és ajánlások
- Szabálykészlet kiválasztása és fokozatos kikényszerítési stratégiák
- Munkafolyamat-ajánlások fejlesztők, ellenőrök és build folyamatok számára
- Útiterv a SonarQube vállalati környezetekben történő skálázásához
Összefoglalás és következő lépések
Követelmények
- A szoftverfejlesztési életciklus ismerete
- Tapasztalat verziókezelő rendszerekkel és alapvető CI/CD fogalmakkal
- Java vagy Angular fejlesztői környezetek ismerete
Célközönség
- Fejlesztők (Java / Quarkus / Angular)
- DevOps és CI/CD mérnökök
- Biztonsági mérnökök és alkalmazásbiztonsági ellenőrök
Vélemények (1)
Bevezető, gyakorlati tanulás.
Balavignesh Elumalai - Scottish Power
Kurzus - SonarQube for DevOps
Gépi fordítás