Scopul său este de a preveni modificări neautorizate, furtul de credențiale, execuția nesigură, substituția de artefacte și utilizarea abuzivă a accesului adesea puternic al pipeline-ului la depozitele de surse și mediile de producție.
Pipeline-ul trebuie tratat ca un plan de control de producție. Securitatea acoperă regulile depozitului, serviciile de automatizare, runner-ii, plug-in-urile, secretele, intrările de build, depozitele de artefacte, serviciile de semnare sau atestare, aprobările de lansare, credențialele de implementare, jurnalizarea și recuperarea — nu doar verificările inserate într-un build.
Puncte esențiale
Identitate și controlul fluxuluiSeparați identitățile umane și de sarcini de lucru, aplicați privilegii minime, protejați modificările administrative, cereți revizuire sau aprobare adecvată și restricționați ce evenimente, ramuri și actori pot declanșa joburi privilegiate.
Execuție și dependențeIzolați joburile, preferați workeri efemeri, fixați sau verificați acțiunile și instrumentele externe, constrângeți accesul de rețea și împiedicați contribuțiile nesigure să primească credențiale sensibile.
Integritatea artefactelorLegați ieșirile de sursa revizuită și instrucțiunile de build, înregistrați proveniența, protejați materialul de semnare, verificați artefactele înainte de promovare și păstrați dovezi evidente pentru manipulare, pentru investigare.
Limitare importantăUn pipeline protejat nu stabilește că software-ul pe care îl lansează este lipsit de defecte de securitate. În sens invers, adăugarea de scanere de aplicații nu securizează identitățile, runner-ii, planul de control sau calea de artefacte ale pipeline-ului, care ar putea modifica sau ocoli rezultatele lor.