Sikkerhed i afhængigheder og forsyningskæden (SCA)
Beskyt Deres pipeline mod sårbare tredjepartspakker med Software Composition Analysis, Dependabot, dependency review og fastlåste actions.
Sikkerhed i afhængigheder og forsyningskæden (SCA) er en gratis Intensiv DevOps-uddannelse-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Intensiv DevOps-uddannelse, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.
Risikoen i softwareforsyningskæden
Moderne applikationer bygges hovedsageligt af tredjepartsafhængigheder. En enkelt sårbar pakke dybt i dit afhængighedstræ kan kompromittere hele appen.
Det er risikoen i softwareforsyningskæden, og sikring af den er en central del af DevSecOps.
Hvad er SCA?
Analyse af softwarekomponenter (SCA) scanner dit projekts afhængigheder og sammenligner dem med databaser over kendte sårbarheder (CVE'er).
I modsætning til SAST, som undersøger din kode, fokuserer SCA på de biblioteker, du importerer.
- Finder versioner med kendte sårbarheder
- Markerer risikable eller inkompatible licenser
- Foreslår sikre opgraderingsversioner
Dependabot-advarsler
GitHub leverer Dependabot, som løbende scanner dine manifestfiler og udsender advarsler, når en afhængighed har en kendt sårbarhed.
Du aktiverer det under Indstillinger > Kodesikkerhed og analyse. Advarsler vises på fanen Security med alvorlighedsgrader.
Automatiske opdateringer af afhængigheder
Dependabot kan også åbne pull requests, der automatisk opdaterer sårbare afhængigheder. Konfigurer det med en dependabot.yml-fil.
version: 2
updates:
- package-ecosystem: npm
directory: /
schedule:
interval: weeklyGennemgang af afhængigheder i PR'er
dependency-review-action kører på pull requests og blokerer sammenfletningen, hvis en PR introducerer en afhængighed med en kendt sårbarhed.
Det flytter sikkerheden til venstre og opdager risikable pakker, før de når main-grenen.
- name: Dependency Review
uses: actions/dependency-review-action@v4
with:
fail-on-severity: highFastlåsning af actionversioner
De actions, du kalder i en arbejdsgang, er selv afhængigheder. Hvis du refererer til @v4, stoler du på den, der kontrollerer dette tag.
For maksimal sikkerhed skal du fastlåse actions til en fuld commit-SHA, som ikke kan ændres.
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11Lockfiler er vigtige
En lockfil (f.eks. package-lock.json eller poetry.lock) fastlåser de nøjagtige versioner og hashes for afhængighederne.
I CI skal du bruge en deterministisk installationskommando, så builds kan genskabes, og en manipuleret version ikke kan hentes ubemærket.
- name: Install (locked)
run: npm ciGenerering af en SBOM
En softwarestykliste (SBOM) er en komplet fortegnelse over alle komponenter i dit build. Den bliver i stigende grad krævet af hensyn til compliance.
GitHub kan eksportere en SBOM i SPDX-format, og værktøjer som Syft kan generere en i CI.
- name: Generate SBOM
uses: anchore/sbom-action@v0
with:
format: spdx-jsonLicensoverholdelse
SCA dækker også licensrisiko. Hvis du inddrager et GPL-licenseret bibliotek i et proprietært produkt, kan det medføre juridiske forpligtelser.
Konfigurer din scanner til at markere eller afvise ikke-tilladte licenser, så problemet opdages i CI i stedet for ved en revision.
Få buildet til at fejle
Det hjælper kun at opdage problemer, hvis det stopper dårlig kode. Konfigurer SCA-kontroller til at få forløbet til at fejle, når der findes en kritisk sårbarhed.
Angiv en alvorlighedstærskel, så fund med lav risiko udløser en advarsel, mens kritiske fund blokerer sammenfletningen eller udrulningen.
with:
fail-on-severity: criticalKontinuerlig overvågning
Der offentliggøres nye sårbarheder hver dag, så en enkelt scanning er ikke nok. Kør SCA efter en fast tidsplan og på hver PR.
Det fanger pakker, der var sikre på tidspunktet for sammenfletningen, men senere blev sårbare.
on:
schedule:
- cron: '0 6 * * 1'Hurtigt tjek
Test din forståelse af sikkerhed i softwareforsyningskæden.
Opsummering
Du har lært at sikre softwareforsyningskæden.
- SCA scanner afhængigheder for kendte sårbarheder
- Dependabot advarer om og opdaterer automatisk risikable pakker
- Gennemgang af afhængigheder blokerer risikable PR'er
- Fastlås actions til SHA'er, brug lockfiler, og generer en SBOM
Kombineret med SAST og håndtering af hemmeligheder giver dette et komplet sikkert forløb.
Lær Intensiv DevOps-uddannelse med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 142
- Lektioner
- 568
Ofte stillede spørgsmål
Er lektionen “Sikkerhed i afhængigheder og forsyningskæden (SCA)” gratis?
Ja — alle 3 lektioner i læringssporet Intensiv DevOps-uddannelse, inklusive “Sikkerhed i afhængigheder og forsyningskæden (SCA)”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Sikkerhed i afhængigheder og forsyningskæden (SCA)”?
Beskyt Deres pipeline mod sårbare tredjepartspakker med Software Composition Analysis, Dependabot, dependency review og fastlåste actions. Du øver dig i Intensiv DevOps-uddannelse med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Intensiv DevOps-uddannelse?
Der kræves ingen tidligere erfaring. Intensiv DevOps-uddannelse på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.
Hvor lang tid tager lektionen “Sikkerhed i afhængigheder og forsyningskæden (SCA)”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Intensiv DevOps-uddannelse-lektion?
Ja. Alle Intensiv DevOps-uddannelse-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Bedste praksis for sikkerhed i CI/CD
- Håndtering af secrets med GitHub
- Static Application Security Testing (SAST)
- Sikkerhed i afhængigheder og forsyningskæden (SCA)