Säkerhet för beroenden och leveranskedjan (SCA)
Skydda Er pipeline mot sårbara tredjepartspaket med Software Composition Analysis, Dependabot, beroendegranskning och låsta actions-versioner.
Säkerhet för beroenden och leveranskedjan (SCA) är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 4 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Risken i leveranskedjan
Moderna applikationer byggs till största delen av beroenden från tredje part. Ett enda sårbart paket långt ned i beroendeträdet kan äventyra hela appen.
Detta är risken i programvarans leveranskedja, och att säkra den är en central del av DevSecOps.
Vad är SCA?
Software Composition Analysis (SCA) genomsöker projektets beroenden och jämför dem med databaser över kända sårbarheter (CVE:er).
Till skillnad från SAST, som granskar er kod, fokuserar SCA på biblioteken som ni importerar.
- Identifierar versioner med kända sårbarheter
- Markerar riskfyllda eller inkompatibla licenser
- Föreslår säkra uppgraderingsversioner
Dependabot-varningar
GitHub tillhandahåller Dependabot, som kontinuerligt genomsöker era manifestfiler och skapar varningar när ett beroende har en känd sårbarhet.
Det aktiveras under Settings > Code security and analysis. Varningarna visas på fliken Security med allvarlighetsgrader.
Automatiska beroendeuppdateringar
Dependabot kan även skapa pull requests som automatiskt uppdaterar sårbara beroenden. Konfigurera det med filen dependabot.yml.
version: 2
updates:
- package-ecosystem: npm
directory: /
schedule:
interval: weeklyBeroendegranskning i PR:er
dependency-review-action körs på pull requests och blockerar sammanslagningen om en PR introducerar ett beroende med en känd sårbarhet.
Detta flyttar säkerheten åt vänster genom att fånga upp riskfyllda paket innan de når huvudgrenen.
- name: Dependency Review
uses: actions/dependency-review-action@v4
with:
fail-on-severity: highLåsa action-versioner
De actions som ni anropar i ett arbetsflöde är själva beroenden. Att referera till @v4 innebär att ni litar på den som kontrollerar taggen.
För maximal säkerhet ska actions låsas till en fullständig commit SHA, som inte kan ändras.
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11Lockfiler är viktiga
En lockfil (som package-lock.json eller poetry.lock) låser exakta beroendeversioner och hashvärden.
I CI ska ni använda ett deterministiskt installationskommando så att byggen kan återskapas och inte omärkligt hämtar en manipulerad version.
- name: Install (locked)
run: npm ciGenerera en SBOM
En programvaruförteckning (SBOM) är en fullständig inventering av varje komponent i ert bygge. Den krävs allt oftare för att uppfylla regelverk.
GitHub kan exportera en SBOM i SPDX-format, och verktyg som Syft kan generera en i CI.
- name: Generate SBOM
uses: anchore/sbom-action@v0
with:
format: spdx-jsonLicensefterlevnad
SCA omfattar även licensrisk. Att ta in ett GPL-licensierat bibliotek i en proprietär produkt kan skapa juridiska skyldigheter.
Konfigurera er skanner så att den markerar eller nekar otillåtna licenser, så att problemet upptäcks i CI i stället för vid en revision.
Stoppa bygget vid fel
Identifiering hjälper bara om den stoppar dålig kod. Konfigurera SCA-grindar så att pipelinen misslyckas när en kritisk sårbarhet upptäcks.
Ange en tröskel för allvarlighetsgrad så att fynd med låg risk ger en varning medan kritiska fynd blockerar sammanslagningen eller driftsättningen.
with:
fail-on-severity: criticalKontinuerlig övervakning
Nya sårbarheter offentliggörs dagligen, så en engångsgenomsökning räcker inte. Kör SCA enligt ett schema och vid varje PR.
Detta fångar upp paket som var säkra när de slogs samman men senare blev sårbara.
on:
schedule:
- cron: '0 6 * * 1'Snabbkontroll
Testa er förståelse av säkerhet i leveranskedjan.
Sammanfattning
Ni har lärt er att säkra programvarans leveranskedja.
- SCA genomsöker beroenden efter kända sårbarheter
- Dependabot varnar för och uppdaterar riskfyllda paket automatiskt
- Beroendegranskning blockerar riskfyllda PR:er
- Lås actions till SHA-värden, använd lockfiler och generera en SBOM
Tillsammans med SAST och hantering av hemligheter gör detta pipelinen komplett ur säkerhetssynpunkt.
Lär dig DevOps-bootcamp med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 142
- Lektioner
- 568
Vanliga frågor
Är lektionen ”Säkerhet för beroenden och leveranskedjan (SCA)” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Säkerhet för beroenden och leveranskedjan (SCA)”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Vad lär jag mig i ”Säkerhet för beroenden och leveranskedjan (SCA)”?
Skydda Er pipeline mot sårbara tredjepartspaket med Software Composition Analysis, Dependabot, beroendegranskning och låsta actions-versioner. Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?
Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.
Hur lång tid tar lektionen ”Säkerhet för beroenden och leveranskedjan (SCA)”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?
Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Bästa säkerhetspraxis i CI/CD
- Hemlighetshantering med GitHub
- Statisk säkerhetstestning av applikationer (SAST)
- Säkerhet för beroenden och leveranskedjan (SCA)