비교
CRACI vs Harness
Harness는 자체 CI와, 파이프라인에서 SBOM과 SLSA 출처 증명을 생성하는 Supply Chain Security 모듈을 갖춘 소프트웨어 딜리버리 플랫폼입니다. CRACI는 GitHub Actions 작업이 실행되는 러너이므로, SBOM, 네트워크 정책, 출처 증명이 빌드 자체에서 나옵니다.
업데이트
간단히 말하면
2017년에 설립되어 샌프란시스코에 본사를 둔 Harness는 코드 작성 이후의 모든 과정을 위한 플랫폼을 판매합니다. 지속적 통합, 지속적 배포, 기능 플래그, 클라우드 비용 관리, 카오스 엔지니어링, 보안 테스트입니다. Supply Chain Security(SCS) 모듈은 SBOM 생성, SLSA 출처 증명, OPA 정책 게이트, 리포지토리와 파이프라인의 보안 태세 점검을 더합니다. 여러 Git 제공업체에 걸쳐 전체 딜리버리 파이프라인을 하나의 공급업체로 해결하고 싶다면, Harness가 그런 용도로 만들어졌습니다.
CRACI는 범위가 더 좁은 대신 빌드 안으로 더 깊이 들어갑니다. GitHub Actions 러너로서, 각 작업이 실행되는 동안 빌드가 가져오는 모든 외부 종속성을 기록하고, 빌드 네트워크에 이그레스 정책을 적용하며, 그 기록으로부터 SBOM, 출처 증명 데이터, 취약점 모니터링을 제공합니다. Harness는 파이프라인에 공급망 단계를 추가하고, CRACI는 러너 자체를 보안 기록으로 만듭니다.
먼저 짚어 둘 실무적인 점이 있습니다. CRACI는 현재 GitHub Actions만 지원하며, GitLab CI와 Jenkins는 로드맵에 있습니다. Harness CI 파이프라인을 CRACI에서 실행하려면 GitHub Actions로 옮겨야 합니다.
한눈에 보기
| 기능 | CRACI | Harness |
|---|---|---|
| SBOM 생성 방식 | 각 작업이 가져온 항목에서 완전성 상태와 함께 기록 | 파이프라인 단계에서 Syft 또는 cdxgen이 이미지나 리포지토리를 스캔 |
| SBOM 형식 | CycloneDX 및 SPDX | SPDX 및 CycloneDX |
| 빌드 출처 증명 | API를 통한 출처 증명 데이터, 서명 없음 | SLSA Build L1~L3, cosign으로 서명 |
| 빌드 네트워크 이그레스 정책 | 기본 거부 또는 기본 허용, 작업 전에 검증, 실패 시 차단 | 러너의 비정상 네트워크 호출을 탐지한다고 설명 |
| 정책 게이트 | 결과, 특정 CVE 또는 라이선스에 따라 빌드 차단 | SBOM, 출처 증명, 배포에 대한 OPA 정책 |
| 출시한 항목의 모니터링 | 모니터링 대상 SBOM을 지속적으로 재평가 | 새 CVE에 노출된 파이프라인과 아티팩트 표시 |
| CI/CD 및 리포지토리 보안 태세 점검 | OWASP Top 10 CI/CD Risks 및 CIS 벤치마크 | |
| CI 시스템 | 현재 GitHub Actions, GitLab CI와 Jenkins는 로드맵에 포함 | Harness CI, SCS 단계는 GitHub Actions와 GitLab CI/CD에서도 사용 가능 |
| 호스팅 러너 플랫폼 | x86-64 및 ARM64의 Linux, 1~32 vCPU. Windows와 macOS는 로드맵에 포함. | 최대 96코어 Linux AMD64와 최대 64코어 ARM64, Windows, Apple M4 기반 macOS. |
| 셀프 호스팅 빌드 인프라 | 고객 호스팅 러너, Enterprise | Kubernetes, VM 또는 베어 메탈 |
| 배포, 기능 플래그, 비용 관리 | CRACI는 빌드를 담당 | 같은 플랫폼의 모듈 |
| 가격, 2 vCPU Linux | 분당 $0.004(vCPU 분당 $0.002), 초 단위 측정. | 2코어 7 GB 기준 분당 $0.005, 분 단위로 반올림. |
| 플랜 | 빌드 분당 과금: 2 vCPU 분당 $0.004, 초 단위 측정. 월 요금 및 SBOM당 요금 없음. | 월 2,000 Harness Cloud 크레딧이 포함된 Free 플랜, 유료 플랜, 크레딧 패키지, Supply Chain Security는 영업팀 문의(2026년 9월 기준). |
- 포함
- 일부 지원
- 미포함
- 로드맵에 포함
Harness의 강점
딜리버리를 위한 하나의 플랫폼. Harness는 CI, CD, GitOps, 기능 플래그, 코드형 인프라, 카오스 엔지니어링, 클라우드 비용 관리를 다루며, 이들 전반에 OPA 기반 정책 적용을 제공합니다. GitHub, GitLab, Bitbucket, Azure Repos, 자체 Harness Code 리포지토리와 함께 동작하며, 1,200명 이상의 직원으로 1,000개 이상의 엔터프라이즈 고객에게 서비스한다고 밝힙니다.
빌드 인프라 선택의 폭. Harness Cloud는 Harness가 관리하는 Linux, Windows, macOS 머신에서 빌드를 실행합니다. Linux AMD64는 2~96코어, ARM64는 같은 요율로 2~64코어, macOS는 Apple M4 기반입니다. Linux AMD64에서는 중첩 가상화를 사용할 수 있습니다. 자사 Kubernetes 클러스터, VM, 베어 메탈에서 빌드를 실행할 수도 있습니다. Test Intelligence는 변경 사항이 영향을 주는 테스트만 실행하며, Build Intelligence와 캐시 기능은 변경되지 않은 출력과 종속성을 재사용합니다.
파이프라인 안의 공급망 기능. SCS 모듈의 SBOM Orchestration 단계는 Syft 또는 cdxgen으로 컨테이너 이미지나 코드 리포지토리의 SBOM을 SPDX 또는 CycloneDX로 생성하며, 다른 도구의 SBOM을 수집할 수도 있습니다. Harness는 모든 빌드에서 SBOM을 생성하고 업데이트한다고 설명합니다. OPA 정책은 구성 요소, 라이선스, 출처 증명에 따라 빌드와 배포를 차단할 수 있으며, 조치 추적기가 취약한 아티팩트를 추적합니다.
SLSA 출처 증명. Harness는 SLSA v1.0 기준 SLSA Build Level 1, 2, 3을 문서화하고 있으며, 출처 증명은 in-toto 증명과 cosign으로 서명됩니다. 문서에 따르면 Level 3에는 강화된 빌드 인프라 또는 빌드 프로세스를 서로 격리하는 Harness Cloud가 필요합니다.
보안 태세 및 파이프라인 점검. SCS는 리포지토리와 파이프라인을 OWASP Top 10 CI/CD Security Risks와 CIS 벤치마크에 따라 감사하고, 고정되지 않았거나 검증되지 않았거나 권한이 과도한 GitHub Actions를 표시합니다. Harness는 SCS 단계를 GitHub Actions와 GitLab CI/CD 컴포넌트로도 제공하므로 이 모듈은 Harness CI에 묶여 있지 않습니다. 단, 이 단계를 쓰려면 SCS 라이선스가 있는 Harness 계정이 필요합니다.
CRACI의 차이점
SBOM은 출력물 스캔이 아니라 빌드에서 나옵니다
Syft와 cdxgen은 스캐너입니다. 사후에 이미지나 리포지토리를 읽고, 잠금 파일, 매니페스트, 패키지 데이터베이스로부터 그 안에 무엇이 있는지 추론합니다. 이런 파일이 모든 것을 말해 줄 때는 잘 동작합니다. 그러나 빌드는 더 많은 일을 하는 경우가 많습니다. 설치 스크립트가 코드를 내려받고, Rust 빌드 스크립트가 빌드 시점에 무언가를 가져오며, 캐시는 어떤 잠금 파일에도 언급되지 않은 패키지를 복원합니다.
CRACI는 러너이기 때문에 그 트래픽을 봅니다. 패키지를 인식하는 프록시가 npm, PyPI, RubyGems, Composer, Cargo, Go, Nix, OCI, apt, apk, Git 소스와 다운로드 프리셋 전반에서 각 작업이 패키지 소스로부터 가져오는 항목을 기록하며, 종속성 증거는 CI 캐시와 함께 전달됩니다. 잠금 파일 기반 도구가 놓치는 숨은 종속성을 기록하고, 각 SBOM은 작업별, 캐시별로 얼마나 완전한지를 Complete, Complete with connections, Incomplete, Unavailable 또는 Not recorded로 표시합니다.
사후 탐지가 아니라 빌드 네트워크에 대한 정책
Harness는 자사 모듈이 네트워크 호출과 권한 상승을 포함한 CI 러너의 비정상 동작을 탐지한다고 설명합니다. CRACI는 다른 길을 택합니다. 러너 단의 이그레스 정책이 작업이 접근할 수 있는 호스트를 결정합니다. 정책은 기본 거부 또는 기본 허용 방식이며, 24개의 기본 제공 소프트웨어 소스 프리셋과 유형별 사용자 지정 소스를 지원하고, 작업 시작 전에 검증되며 실패 시 차단됩니다. 기본 거부 정책은 알려진 악성 호스트를 찾는 대신 빌드에 필요한 것만 허용하므로, 아무도 본 적 없는 공격이라도 공격자 서버로의 데이터 유출을 차단합니다. 위반이 발생하면 알림을 보냅니다.
같은 기록에서 나오는 출처 증명과 모니터링
API는 SBOM, 네트워크 추적, 출처 증명을 반환합니다. CRACI는 출처 증명에 서명하지 않으며 SLSA 레벨을 주장하지 않습니다. Harness는 출처 증명에 서명하고 Level 1~3을 문서화하고 있으므로, 서명된 출처 증명이나 SLSA 레벨이 구매 요건이라면 Harness에 유리합니다. CRACI는 빌드와 리포지토리 전반의 취약점을 집계하고, 권고가 나올 때마다 모니터링 대상 SBOM을 재평가하며, 취약한 종속성이 포함되었던 과거 빌드를 보여 주므로 영향을 받은 기간을 알 수 있습니다.
알기 쉬운 요금
CRACI는 빌드 시간에만 요금을 부과합니다. vCPU 분당 $0.002(기본 2 vCPU 러너는 $0.004)이며 초 단위로 측정하고, 월 사용료와 SBOM당 요금은 없습니다. Harness는 Harness Cloud 요율을 공개하고 있으며, 7 GB의 2코어 Linux 머신은 분당 $0.005, 32코어는 $0.080이고 분 단위로 반올림해 청구합니다. 유료 플랜과 SCS 모듈의 가격은 영업팀을 통해 정해집니다. CRACI의 정가는 두 크기 모두 분당 20% 낮습니다($0.004 대 $0.005, $0.064 대 $0.080). Harness 머신은 코어당 메모리가 더 많습니다.
어느 쪽이 맞을까
- CI, CD, 기능 플래그, 비용 관리를 하나의 공급업체에서 얻고 싶거나, 코드가 GitLab, Bitbucket 또는 Azure Repos에 있거나, Windows, macOS 또는 자사 빌드 하드웨어가 필요하거나, 문서화된 SLSA Build Level 3가 요건이라면 Harness를 유지하세요.
- 코드가 GitHub에 있고 GitHub Actions를 사용하거나 사용할 계획이며, SBOM, 네트워크 정책, 출처 증명을 빌드를 실행한 러너로부터 빌드 분 단위 요금으로 얻고 싶다면 CRACI를 선택하세요.
CRACI를 선택하면 포기하는 부분도 분명히 알아 두세요. CRACI는 소프트웨어를 배포하지 않고, 기능 플래그를 운영하지 않으며, 클라우드 비용을 관리하지 않습니다. 리포지토리와 파이프라인을 보안 태세 벤치마크에 따라 점검하거나 소스 코드를 스캔하지도 않습니다. 현재는 Linux 작업만 실행하며 Windows와 macOS는 로드맵에 있고, Enterprise용 고객 호스팅 러너도 로드맵에 있습니다.
규제 대상 제품의 경우
EU Cyber Resilience Act 같은 프레임워크는 제조업체가 각 릴리스에 무엇이 들어 있는지 파악하고 그 취약점을 처리할 것을 요구하며, 보고 의무는 2026년 9월부터 적용됩니다. Harness는 파이프라인 단계에서 SBOM, 출처 증명, 정책 결과를 제공합니다. CRACI는 빌드 기록에서 증거를 만들고 SBOM을 CycloneDX 또는 SPDX로 내보냅니다. 기업이 더 넓은 CRA 프로세스에 필요로 하는 소프트웨어 공급망 가시성과 증거의 상당 부분을 자동화하지만, 어느 도구도 그 자체만으로 제품을 컴플라이언스 상태로 만들지는 않습니다.
파이프라인을 CRACI로 옮기기
CRACI는 GitHub Actions가 아니라 러너를 대체하며, 실행 내역은 여전히 GitHub UI에 표시됩니다. 파이프라인이 GitHub Actions 워크플로로 실행되고 있다면, 한 줄로 CRACI에서 실행할 수 있습니다.
runs-on: craci
빌드 시점 SBOM 생성에 대해 자세히 알아보거나, CI/CD 플랫폼을 비교하거나, Harness 대안 또는 요금을 확인하세요.