Srovnání
CRACI vs GitLab CI
GitLab skenuje váš projekt a hlásí, co deklarují jeho lockfily. CRACI je runner, takže zaznamenává, co každý build skutečně stáhl. Rozdíl je v tom, odkud pochází vaše SBOM a původ (provenance).
Aktualizováno
Stručná odpověď
GitLab je kompletní platforma DevSecOps: správa zdrojového kódu, merge requesty, plánování a CI/CD v jednom produktu, se širokou sadou bezpečnostních skenerů a správou zranitelností v tarifu Ultimate. Pokud chcete jednoho dodavatele pro celý životní cyklus softwaru, GitLab je pro to stavěný.
CRACI je užší. Je to runner kompatibilní s GitHub Actions, který zaznamenává každou externí závislost, kterou build stáhne, řídí, kam se build může připojit, a z tohoto záznamu vytváří SBOM, data o původu a důkazy pro CRA. Zásadní rozdíl je tradiční CI s připojenými skenery oproti CI, kde je bezpečnostním záznamem samotný runner.
Nejdřív jedna praktická poznámka. CRACI dnes podporuje pouze GitHub Actions; GitLab CI a Jenkins jsou v plánu vývoje. Pokud vaše pipeline běží v GitLab CI, museli byste je pro použití runnerů CRACI přesunout do GitHub Actions, nebo počkat na podporu GitLab CI, která je v plánu vývoje.
| Funkce | CRACI | GitLab |
|---|---|---|
| Závislosti zaznamenané z buildu | Zjištěná stahování, včetně balíčků z cache CI | Skenery čtou lockfily a exporty grafu závislostí |
| Export SBOM | CycloneDX nebo SPDX pro každý build, se stavem úplnosti | Reporty CycloneDX; export seznamu závislostí v Ultimate |
| Politika odchozího provozu buildu | Výchozí zákaz nebo povolení, fail-closed | Vaše vlastní síťová opatření na self-managed runnerech |
| Původ buildu (provenance) | Data o původu přes API; nepodepsaná | Prohlášení o původu SLSA 1.0 z runneru |
| Průběžné monitorování zranitelností | Monitorované SBOM se průběžně znovu vyhodnocují | Průběžné skenování zranitelností v Ultimate |
| Reporty souladu | SBOM v CycloneDX nebo SPDX, záznamy přes API; bez exportu reportů | Funkce pro soulad a governance v Ultimate |
| SAST, detekce tajných klíčů, DAST | Základní SAST a tajné klíče ve všech tarifech; DAST v Ultimate | |
| Správa zdrojového kódu a plánování | Funguje s vašimi repozitáři na GitHubu | Repozitáře, merge requesty a plánování na jedné platformě |
| Podporované systémy CI | Dnes GitHub Actions; GitLab CI a Jenkins v plánu vývoje | GitLab CI/CD, hostovaný nebo self-managed |
| Platformy hostovaných runnerů | Linux na x86-64 a ARM64, 1 až 32 vCPU. Windows a macOS v plánu vývoje. | Linux na x86-64 a arm64; hostované runnery pro Windows a macOS v betaverzi. |
| Ceník | Platíte za minutu buildu: $0.004 za 2vCPU minutu, účtováno po sekundách. Bez měsíčního poplatku a bez poplatku za SBOM. | Free se 400 výpočetními minutami; Premium $29 za uživatele měsíčně při roční platbě; Ultimate za individuální cenu (stav k září 2026). |
- Součástí
- Částečně
- Není součástí
- V plánu vývoje
Co GitLab dělá dobře
Jedna platforma. Kód, revize, pipeline, bezpečnostní nálezy i plánování jsou na stejném místě, s jedním modelem oprávnění. Pro mnoho organizací už to samo rozhoduje.
Bezpečnostní skenování podle tarifu. Je dobré přesně vědět, co který tarif obsahuje. Podle GitLabu běží základní SAST, detekce tajných klíčů a skenování kontejnerů ve všech tarifech, včetně Free. Ve Free a Premium tyto skeny vytvářejí artefakty s reporty ve formátu JSON. Ultimate k nim přidává workflow: nálezy v merge requestech, report zranitelností, seznam závislostí, bezpečnostní schvalování a GitLab Advanced SAST. Skenování závislostí, průběžné skenování zranitelností a DAST jsou funkcemi Ultimate. Skenování kontejnerů umí v každém tarifu vytvořit také report SBOM ve formátu CycloneDX.
Původ (provenance). GitLab Runner umí ve všech tarifech vygenerovat prohlášení o původu artefaktu ve formátu SLSA 1.0. Existují i podepsané atestace SLSA Level 3, ale GitLab je uvádí jako experiment na GitLab.com pro Ultimate, za feature flagem, který je ve výchozím stavu vypnutý.
Výběr runnerů. Runnery hostované GitLabem pokrývají Linux na x86-64 (2 až 32 vCPU) a arm64, Windows a macOS jsou v betaverzi. Vlastní runnery můžete provozovat také kdekoli a GitLab uvádí, že joby na vlastních runnerech nespotřebovávají výpočetní minuty. GitLab Dedicated přidává umístění dat v regionu dle vašeho výběru.
V čem je CRACI jiné
SBOM pochází z buildu, ne z lockfilu
Skenování závislostí v GitLabu založené na SBOM zjišťuje závislosti z podporovaných lockfilů nebo exportů grafu závislostí. To je solidní přístup, pokud lockfile říká vše. Buildy ale často dělají víc: spouštějí instalační skripty, stahují toolchainy, obnovují cache a stahují základní image.
CRACI tuto aktivitu vidí, protože je runnerem. Proxy, která rozumí balíčkům, sleduje během jobu provoz ke zdrojům balíčků napříč zdroji npm, PyPI, RubyGems, Composer, Cargo, Go, Nix, OCI, apt, apk a Git, plus předvolby pro stahování. Důkazy o závislostech putují spolu s cache CI, takže i balíček obnovený z cache je započítán. Každý job vytvoří SBOM ve formátu CycloneDX nebo SPDX.
Úplnost je uvedena, ne předpokládána
Každá SBOM nese stav úplnosti pro každý job a každou cache: Complete, Complete with connections, Incomplete, Unavailable nebo Not recorded. Když má záznam mezeru, vidíte ji.
Síť buildu řídí politika
Egress policy v CRACI mají výchozí zákaz nebo výchozí povolení, s 24 vestavěnými předvolbami softwarových zdrojů a typovanými vlastními zdroji pro npm, PyPI, apt, apk, Go proxy, Nix, Cargo, registry OCI a Git. Politiky se ověřují před startem jobu, při selhání vše zablokují (fail-closed) a při porušení pošlou upozornění. V GitLabu je řízení sítě pro buildy to, co si sami nastavíte kolem svých runnerů.
Původ (provenance)
API vrací SBOM, síťové záznamy a původ. CRACI původ nepodepisuje a nedeklaruje žádnou úroveň SLSA.
Monitorování toho, co bylo dodáno
CRACI agreguje zranitelnosti napříč buildy a repozitáři a průběžně znovu vyhodnocuje monitorované SBOM, jak vycházejí nová bezpečnostní upozornění.
Co se hodí pro vás
- Zůstaňte u GitLabu, pokud máte kód a pipeline na GitLabu a chcete jednu platformu, nebo pokud potřebujete SAST, DAST a detekci tajných klíčů v jednom produktu.
- Zvolte CRACI, pokud máte kód na GitHubu a používáte GitHub Actions a potřebujete důkazy o tom, co šlo do každého vydání, kontrolu nad tím, kam se buildy mohou připojit, a SBOM, které obhájíte při auditu.
- Používejte obojí, pokud vaše organizace provozuje obě platformy. GitLab dál pokrývá své projekty a skenery; CRACI obsluhuje stranu GitHub Actions a zaznamenává tyto buildy.
Pro Cyber Resilience Act
Podle unijního Cyber Resilience Act musí výrobci vědět, co obsahuje každé vydání produktu, a řešit v něm zranitelnosti. Povinnosti hlásit zranitelnosti platí od září 2026 a nařízení se plně použije od prosince 2027. GitLab Ultimate pomáhá s hledáním a správou zranitelností napříč vašimi projekty. CRACI zaznamenává, z čeho bylo každé vydání sestaveno, průběžně ho monitoruje a exportuje SBOM ve formátu CycloneDX nebo SPDX. Automatizuje významnou část přehledu o softwarovém dodavatelském řetězci a důkazů, které firmy potřebují pro svůj širší proces souladu s CRA. Ani jeden z nástrojů vám sám o sobě soulad nezajistí.
Přidání CRACI
U repozitáře na GitHubu nainstalujte do své organizace GitHub App CRACI, pro všechny repozitáře nebo vybranou sadu, a změňte label runneru:
runs-on: craci
Workflow, actions i rozhraní GitHubu zůstávají stejné. CRACI nahrazuje runner, ne GitHub Actions. Přečtěte si více o generování SBOM z doby buildu a důkazech pro CRA, nebo se podívejte na ceník.
Podívejte se, co jeden build skutečně stáhne
Spusťte jeden workflow GitHub Actions na CRACI a porovnejte jeho SBOM s tou, kterou dnes vytvářejí vaše skenery.
Rezervujte si demo