Vertailu
CRACI ja Chainguard
Chainguard koventaa sen, mitä buildiisi menee: konttikuvat, ohjelmointikielten kirjastot ja GitHub Actions -toiminnot. CRACI suojaa ja tallentaa itse buildin. Toinen puhdistaa lähtöaineksen, toinen tallentaa, mitä sille tapahtui.
Päivitetty
Lyhyt vastaus
Chainguard buildaa avoimen lähdekoodin ohjelmistoja lähdekoodista ja toimittaa ne kovennettuina: minimaalisia konttikuvia, joissa on vähän tai ei lainkaan tunnettuja haavoittuvuuksia, uudelleen buildattuja kirjastoja, VM-kuvia ja kovennettuja GitHub Actions -toimintoja, kukin allekirjoitetun SBOM:n ja alkuperätietojen kanssa. Jos ongelmasi on se, että käyttämissäsi peruskuvissa ja paketeissa on liikaa CVE:itä, Chainguard puuttuu siihen suoraan.
CRACI on GitHub Actionsin CI-runneri. Jobisi ajetaan sillä, ja ajon aikana se tallentaa jokaisen ulkoisen riippuvuuden, jonka jobit hakevat, ja valvoo egress-käytäntöä. Chainguard suojaa lähtöaineksen. CRACI suojaa ja tallentaa buildin. Päällekkäisyyttä on hyvin vähän, ja nämä kaksi sopivat luontevasti yhteen.
Yhdellä silmäyksellä
| Ominaisuus | CRACI | Chainguard |
|---|---|---|
| Ajaa buildisi | Jobit ajetaan CRACI-runnereilla | Toimittaa buildien käyttämät kuvat ja kirjastot |
| Tallentaa, mitä buildisi haki | Havaitut haut, myös CI-välimuisteista palautetut paketit | Sen SBOM:t kuvaavat Chainguardin omia artefakteja |
| Buildin verkon egress-käytäntö | Oletuksena estävä tai salliva, fail closed | Ei sen aluetta: se ei aja buildeja |
| SBOM:t | Omille artefakteillesi, buildikohtaisesti, kattavuus ilmoitettuna | Allekirjoitettu SPDX-SBOM jokaisen konttikuvan mukana |
| Allekirjoitetut alkuperätiedot | Ei allekirjoitettuja alkuperätietoja | SLSA-alkuperätiedot sen kuville ja kirjastoille |
| Haavoittuvuuksien seuranta | Valvotut SBOM:t arvioidaan uudelleen | Tietoturvatiedotteet ja uudelleenbuildit Chainguardin artefakteille |
| Kovennetut, minimaaliset konttikuvat | Lähdekoodista buildattu kuvakatalogi ilman CVE:itä | |
| Lähdekoodista uudelleen buildatut kirjastot | Java, Python ja JavaScript | |
| CVE-korjausten SLA | Kriittiset 7 päivässä, muut vakavuusluokat 14 päivässä | |
| Kovennetut GitHub Actions -toiminnot | Chainguard Actions, buildattu lähdekoodista | |
| Hinnoittelu | $0.002 vCPU-minuutilta ($0.004 kahdella vCPU:lla), mitataan sekunneittain; ei kuukausimaksua eikä SBOM-kohtaista maksua | Enintään viisi konttikuvaa ilmaiseksi; katalogi alkaen $19K kymmenen hengen tiimille, kuvakohtainen hinta tarjouksen mukaan (syyskuu 2026). |
- Sisältyy
- Ei sisälly
Missä Chainguard on hyvä
Chainguard Containers on Chainguardin omin sanoin lähdekoodista buildattu konttikuvakatalogi ilman CVE:itä. Jokaisen kuvan mukana tulee SPDX-muotoinen allekirjoitettu SBOM-attestaatio ja SLSA 1.0 -alkuperäattestaatio, joka kuvaa buildiympäristön, ja kaiken voi todentaa cosignilla. Uudemmista buildeista asiakkaat voivat saada myös CycloneDX-muotoiset SBOM:t.
CVE-käytäntö on konkreettinen. Tilauksen tehneille asiakkaille Chainguard sitoutuu korjaamaan kriittiset CVE:t 7 kalenteripäivässä ja korkean, keskitason ja matalan vakavuuden CVE:t 14 kalenteripäivässä siitä, kun hyväksyttävä korjaus on tullut julkisesti saataville, kuvien tuettujen versiohaarojen osalta.
Chainguard Libraries soveltaa samaa lähestymistapaa ohjelmointikielten paketteihin. Se on Javan, Pythonin ja JavaScriptin riippuvuuksien katalogi, jonka paketit on buildattu uudelleen todennetusta lähdekoodista sen sijaan, että ne ladattaisiin valmiiksi käännettyinä artefakteina. Se toimitetaan JFrog Artifactoryn, Sonatype Nexus Repositoryn tai Cloudsmithin upstream-lähteeksi. Jokaisella paketilla on Sigstore-allekirjoitukset, allekirjoitettu SBOM ja SLSA Level 3 -alkuperätiedot. Chainguard Actions tarjoaa kovennettuja versioita suosituista GitHub Actions -toiminnoista, buildattuina lähdekoodista ja jatkuvasti skannattuina, ja Chainguard VMs soveltaa samaa mallia virtuaalikoneiden kuviin.
CRACI ei tuota kovennettuja kuvia tai kirjastoja eikä lupaa mitään hakemiesi asioiden CVE-määrästä. Se on Chainguardin tehtävä.
Missä CRACI on erilainen
Se valvoo sinun buildiasi, ei Chainguardin
Chainguardin SBOM:t ja alkuperätiedot kuvaavat Chainguardin artefakteja, jotka on buildattu Chainguardin tehtaassa. Oma buildisi ajetaan silti jossain, ja se hakee muutakin kuin peruskuvan: omat riippuvuutesi, työkaluketjut, asennusskriptien hakemat työkalut ja kaiken, mitä työnkulun vaihe lataa. CRACI tallentaa sen. Runnerin paketit tunnistava välityspalvelin havaitsee liikenteen pakettilähteisiin: npm, PyPI, RubyGems, Composer, Cargo, Go, Nix, OCI, apt, apk ja Git-lähteet. Näyttö kulkee CI-välimuistien mukana, ja jokainen SBOM ilmoittaa kattavuutensa jobi- ja välimuistikohtaisesti: Complete, Complete with connections, Incomplete, Unavailable tai Not recorded.
Se rajaa, mihin buildi pääsee
Kovennetuista lähtöaineksista on hyötyä vain, jos buildi todella käyttää niitä. CRACI:n egress-käytäntö on oletuksena estävä tai oletuksena salliva, ja siinä on 24 valmista ohjelmistolähteiden esiasetusta sekä tyypitetyt omat lähteet rekistereille, OCI-rekisterit ja Git mukaan lukien. Käytännöt validoidaan ennen jobin käynnistymistä, ja ne noudattavat fail closed -periaatetta. Käytäntö, joka sallii Chainguard-rekisterisi ja artefaktivarastosi eikä juuri muuta, tekee lauseesta "käytämme Chainguardia" sopimuksen sijaan jotain, jota runneri valvoo.
Se valvoo jatkuvasti sitä, mitä toimitit
API palauttaa SBOM:t, verkkojäljet ja alkuperätiedot. CRACI arvioi valvottuja SBOM:eja jatkuvasti uudelleen uusien haavoittuvuuksien varalta. SBOM:t viedään CycloneDX- tai SPDX-muodossa haavoittuvuuksineen.
Inventaario siitä, mitä on käytössä missäkin
CRACI:n inventaarionäkymä näyttää tarkalleen, mitkä ohjelmistoversiot ovat käytössä missäkin tuotteessa, maailmanlaajuisesti. Kun uusi haavoittuvuus ilmaantuu, näet, missä tuotteissa haavoittuvaa versiota ajetaan, eikä sinun tarvitse koota tietoa julkaisutiedotteista ja laskentataulukoista.
Yhteiskäyttö
Tyypillinen kokoonpano:
- Chainguard toimittaa peruskuvat ja artefaktivarastosi kautta uudelleen buildatut kirjastot.
- CRACI ajaa GitHub Actions -jobit, jotka buildaavat niiden päälle, egress-käytännöllä, joka sallii hyväksytyt lähteesi, ja tallentaa, mitä kukin jobi haki.
OCI on yksi CRACI:n tunnistamista ekosysteemeistä, ja CRACI toimii JFrog Artifactoryn npm- ja PyPI-peilien kanssa, joten sitä kautta tulevat kuvat sekä Python- ja JavaScript-paketit ovat osa buildin tallennetta. Mavenin tuki, joka kattaa Chainguard Librariesin Java-kirjastot, on tiekartalla.
Kumpi sopii
- Skannerit liputtavat jatkuvasti CVE:itä peruskuvissasi: Chainguard korvaa ne kuvat kovennetuilla kuvilla.
- Tarvitset näyttöä siitä, mitä kuhunkin julkaisuun meni: CRACI tallentaa sen buildista.
- Haluat buildeja, jotka pääsevät vain hyväksyttyihin lähteisiin: CRACI:n egress-käytäntö valvoo sitä runnerilla.
- Haluat sekä puhtaan lähtöaineksen että tallennetun buildin: käytä niitä yhdessä, kuten yllä.
EU:n kyberkestävyyssäädöstä varten
Kun lähtökohtana ovat komponentit, joissa on vähän tunnettuja haavoittuvuuksia, dokumentoitu korjaus-SLA ja allekirjoitetut SBOM:t, valmistajan haavoittuvuuksien käsittely helpottuu. Siinä Chainguard auttaa. CRACI automatisoi merkittävän osan siitä ohjelmistotoimitusketjun näkyvyydestä ja näytöstä, jota yritykset tarvitsevat laajempaan CRA-vaatimustenmukaisuusprosessiinsa: mitä kuhunkin julkaisuun meni ja jatkuva haavoittuvuuksien seuranta. Kumpikaan ei yksinään tee tuotteesta vaatimustenmukaista. Lue, mikä CRA on, ja katso CRA-vaatimustenmukaisuus.
CRACI:n lisääminen Chainguard-kokoonpanoon
Asenna CRACI GitHub App ja vaihda sitten runs-on-arvoksi craci niissä työnkuluissa, jotka haluat
tallentaa. Dockerfilesi ja pakettiasetuksesi pysyvät ennallaan. CRACI tukee nyt GitHub Actionsia; GitLab
CI, Jenkins ja muut CI-järjestelmät ovat tiekartalla. Lue lisää
buildin aikaisesta SBOM-generoinnista ja
CI/CD-integraatiosta.
Buildaa puhtaalta pohjalta ja osoita se
Aja yksi Chainguard-kuviasi käyttävä GitHub Actions -työnkulku CRACI-runnerilla ja katso, millaisen tallenteen se jättää.
Varaa demo