DevOps & DevSecOps

Baza znanja


DevOps spaja razvoj i operacije kako bi se softver isporučivao brže, pouzdanije i uz veću automatizaciju. Temelji se na CI/CD-u, infrastrukturi kao kodu (IaC) i kulturi zajedničke odgovornosti.

DevSecOps dodaje sigurnost u svaki korak — od koda do produkcije — kroz automatizirane sigurnosne provjere, provjeru ovisnosti i upravljanje tajnama. Uz observability i policy-as-code, timovi brže otkrivaju i rješavaju probleme. Rezultat su sigurnija izdanja, manji rizik i učinkovitija suradnja između razvojnih i operativnih timova.

DevOps  & DevSecOps – baza znanja

DevOps

DevOps je skup kulturalnih načela, praksi i alata koji spajaju razvoj (Dev) i operacije (Ops) kako bi se ubrzala isporuka i podigla kvaliteta i pouzdanost softverskih usluga. DevOps uklanja “silose”, potiče zajedničku odgovornost za rezultat i pretvara ideje u vrijednost brže, sigurnije i predvidljivije.

Osnovna DevOps ideja: Umjesto prebacivanja zadataka između timova, DevOps uvodi stalnu suradnju, automatizaciju i mjerenje kroz cijeli životni ciklus: od planiranja i razvoja, preko testiranja i isporuke, do nadzora i povratnih informacija – u kontinuirnoj petlji.

  • Culture (kultura) – povjerenje, zajednički ciljevi, blameless učenje.
  • Automation (automatizacija) – CI/CD, IaC i ponovljive pipelineove.
  • Measurement (mjerenje) – metrike toka, kvalitete i pouzdanosti.
  • Sharing (dijeljenje) – vidljivost, runbookovi, zajedničke prakse i alati.
  • CI/CD: kontinuirana integracija i isporuka s automatiziranim build/test/release koracima.
  • Infrastructure as Code (IaC): deklarativna, verzionirana infrastruktura.
  • Automatizirano testiranje: unit, integracijski, e2e, sigurnosni testovi.
  • Release & deployment strategije: blue/green, canary, feature flagovi.
  • Observability i feedback: metrike, logovi, tracing, korisničke povratne informacije.
  • Security by design (DevSecOps): skeniranje ovisnosti, SAST/DAST, tajne, “shift-left” sigurnost.
  • Incident & problem management: standardizirani odgovor i postmortemi s fokusom na učenje.
  • Product + Dev + Ops rade kao jedan tim: dijele ciljeve, planove i KPI-je.
  • Platform/DevOps inženjeri: grade platforme, pipelineove i alate koji ubrzavaju timove.
  • Voditelji: uklanjaju prepreke, potiču kulturu eksperimentiranja i mjere ishod, ne aktivnost.
  • Deployment frequency – koliko često isporučujemo.
  • Lead time for changes – vrijeme od commit-a do produkcije.
  • Change fail rate – udio releasa koji uzrokuju incidente.
  • MTTR (mean time to recovery) – brzina oporavka nakon problema.
  • Kvaliteta – pokrivenost testovima, defekti po releasu, sigurnosni nalazi.
  • CI/CD: GitHub/GitLab CI, Jenkins, CircleCI
  • IaC: Terraform, Ansible, Helm, Pulumi
  • Container/Orkestracija: Docker, Kubernetes, ArgoCD/Flux
  • Observability: Prometheus, Grafana, ELK/Loki, OpenTelemetry
  • Sigurnost: Trivy/Grype, Snyk, OPA, Vault
    (DevOps je prije svega o praksi i kulturi – alati su “enableri”.)

Your Content Goes Here

  • DevOps je krovni pristup suradnji i ubrzavanju toka promjena.
  • SRE operacionalizira pouzdanost unutar DevOps svijeta kroz SLO/error budget i inženjerske prakse.
  • U ITSM okruženju DevOps modernizira Incident/Change/Problem procese: manje čekanja, više automatizacije i mjerljivih ishoda.
  • Brža isporuka značajki uz manje rizika.
  • Stabilnija produkcija i brži oporavak.
  • Transparentnost i bolja suradnja među timovima.
  • Niži troškovi kroz automatizaciju i eliminaciju ručnog rada.
  • Veća motivacija i vlasništvo nad proizvodom.
  • Silosna organizacija → zajednički KPI-jevi i cross-funkcionalni timovi.
  • Previše alata, premalo standarda → platform engineering i “paved roads”.
  • Sigurnost kao “gate” → DevSecOps i rani sigurnosni testovi u pipelineu.
  • Alert fatigue i nepreglednost → standardizirani dashboardi, SLO-ovi i runbookovi.
  1. Mapirajte tok promjena i mjerite DORA metrike kao polaznu točku.
  2. Uvedite CI (svaki commit gradi i testira) i mali batch releasa.
  3. Standardizirajte deploy (automatizirani, ponovljiv, auditabilan).
  4. Primijenite IaC na barem jedan okruženjski sloj.
  5. Osigurajte observability i runbookove za ključne tokove.
  6. Uvedite retrospektive i blameless kulturu – stalno učenje je temelj.

Sažetak: DevOps omogućuje organizacijama da isporučuju brže i pouzdanije, spajajući ljude, procese i tehnologiju u jedan tok vrijednosti. Kroz kulturu suradnje, automatizaciju i mjerljive ciljeve, DevOps skraćuje vrijeme do vrijednosti – uz bolju kvalitetu i manji operativni rizik.

DevSecOps

DevSecOps predstavlja evoluciju DevOps pristupa u kojem se sigurnost integrira u svaki korak životnog ciklusa softvera — od planiranja do produkcije. Cilj je da sigurnost postane zajednička odgovornost razvojnih, sigurnosnih i operativnih timova, uz automatizirane kontrole i kontinuirane provjere unutar CI/CD procesa. DevSecOps koristi alate i prakse poput SAST/SCA skeniranja, upravljanja tajnama, IaC sigurnosti i policy-as-code kako bi se ranjivosti otkrile rano i otklonile brzo. Time se postiže brža i sigurnija isporuka, bolja usklađenost s propisima i manji operativni rizik. Ukratko, DevSecOps spaja brzinu DevOpsa s pouzdanošću i sigurnošću kao temeljnim dijelom svakog koda i svakog builda.

Ključni principi

  • Shift-left sigurnost – rani nalazi su jeftiniji i brže se otklanjaju.
  • Automatizacija – sigurnosne provjere dio su CI/CD-a i “paved roads” platforme.
  • Vidljivost i dokazivost – audit trail, policy-as-code i mjerljive metrike rizika.
  • Blameless učenje – postmortemi i poboljšanja procesa nakon incidenata.

Prakse u DevSecOpsu

  • SAST/SCA/DAST u pipelineu (ranjivosti koda, ovisnosti i aplikacije).
  • Secret & key management (vault, rotacija, skeniranje tajni).
  • Container & cloud security (image signing, minimalne baze, pod-security, CSPM).
  • Infrastructure-as-Code security (policy-as-code, drift detekcija).
  • SBOM i supply-chain sigurnost (provjerljive artefakte, provenance).
  • Threat modeling & secure by design (rana analiza prijetnji i kontrola).

Evo predloška uloga i odgovornosti u DevSecOpsu (spremno za web/bazu znanja):

  • Product Owner – definira poslovne ciljeve i rizike, prioritizira backlog sigurnosnih zahtjeva (npr. regulatorni zahtjevi, SLO za sigurnost), prihvaća isporuke s obzirom na kvalitetu i sigurnost.
  • Engineering Manager / Dev Team Lead – uspostavlja standarde kodiranja i sigurnosne smjernice, planira kapacitete za sigurnosne aktivnosti (SAST/SCA/DAST), prati metrike kvalitete i rizika.
  • Developeri – provode secure-by-default obrasce, pišu testove (unit/integracijske/sigurnosne), uklanjaju nalaze iz skenera, održavaju SBOM i upravljaju tajnama kroz vault.
  • Security Engineer / AppSec – definira policy-as-code, bira i održava sigurnosne alate, provodi threat modeling, validira rješenja, vodi edukacije i savjetuje timove.
  • Security Champion (u timu) – lokalna “produžena ruka” sigurnosti: prati nalaze, pomaže u remediationu, osigurava da sigurnosne prakse žive u svakodnevnom radu.
  • Platform / DevOps Engineer – automatizira CI/CD, integrira sigurnosne provjere u pipeline, standardizira “golden paths”, provodi hardening za build/run okruženja.
  • Cloud/Infra Architect – definira referentnu arhitekturu i kontrole (network segmentation, identity, least privilege), upravlja šifriranjem i konfiguracijom oblaka/IaC.
  • SRE (Site Reliability Engineer) – mjeri i održava SLO-ove, implementira observability (logovi/metrike/tracing), vodi “blameless” postmortems i smanjuje MTTR.
  • QA / Test inženjer – orkestrira testne strategije (funkcionalne + sigurnosne), provodi regresijska i performansna testiranja, validira kontrole prije produkcije.
  • Incident Response Lead – koordinira odgovor na incidente (playbook, komunikacija, forenzika), vodi lekcije naučene i inicira trajne korekcije procesa/alata.
  • Compliance/Privacy (npr. DPO, GRC) – mapira propise u tehničke kontrole, vodi evidencije (audit trail, risk register), prati usklađenost i priprema audite.
  • Release/Change Manager – upravlja rizikom promjena, odobrava produkcijske deploye prema policyju i error budgetu, osigurava rollback/feature-flag strategije.
  • Procurement/Vendor Manager – provodi sigurnosne procjene dobavljača (Third-Party Risk), definira ugovorne zahtjeve (SLA, sigurnosne klauzule) i prati sukladnost.
  • CISO / Head of Security – postavlja strategiju i ciljeve sigurnosti, osigurava resurse i prioritete, izvještava upravu i spaja rizike s poslovnim rezultatima.

RACI preporuka (sažeto):

  • R (Responsible): Dev, AppSec, DevOps/Platform, SRE za tehničku egzekuciju.
  • A (Accountable): Eng Manager / Team Lead za kvalitetu isporuke; CISO za politiku i rizik.
  • C (Consulted): PO, Compliance/Privacy, Cloud Architect.
  • I (Informed): Stakeholderi proizvoda i uprava (SLO, rizici, trendovi).

Ključni isporučivi artefakti: threat model, policy-as-code repo, SBOM, evidencija nalaza i remediation SLA, runbookovi, incident postmortems, sigurnosni dashboard (SLO/MTTR, vuln trendovi).

Metrike (primjeri)

  • Mean Time to Remediate (MTTR) ranjivosti i vulnerability SLA.
  • % buildova koji prolaze sigurnosne provjere bez high/critical nalaza.
  • Pokriće tajni/ovisnosti skeniranjem i postotak policy-compliant deploya.
  • DORA metrike + change-fail rate zbog sigurnosti.

Alati (primjeri)

  • SAST/SCA/DAST: GitLab/GitHub Security, SonarQube, Snyk, OWASP ZAP.
  • Secrets & keys: Vault, cloud KMS, git-secrets.
  • IaC & policy: Terraform + OPA/Conftest, Checkov.
  • Containers & supply chain: Trivy/Grype, Cosign, Admission controllers.
  • Observability & SIEM: Prometheus/Grafana, OpenTelemetry, SIEM/SOAR.

Kako početi (minimalni koraci)

  1. Uključite SAST + SCA u svaki PR/build; 2) uvedite secret scanning i vault;
  2. standardizirajte IaC s policy-as-code; 4) definirajte security SLO-ove i dashboard;
  3. provodite blameless postmorteme i iterativno unapređujte kontrole.

Izazovi i kako ih adresirati

  • “Sigurnost kao kočnica” → prebacite je lijevo i automatizirajte.
  • Previše alata → platform engineering i “golden paths”.
  • Alert fatigue → prioritet po riziku i vulnerability SLA.
  • Shadow IT → policy-as-code, edukacija i zajednički ciljevi.

Sažetak: DevSecOps ugrađuje sigurnost u svaki korak životnog ciklusa softvera – od planiranja i koda do isporuke i operacija – kako bi timovi isporučivali brže, sigurnije i usklađenije. Sigurnost postaje zajednička odgovornost (shared responsibility), a provjere se provode automatizirano i kontinuirano umjesto kao završna “gate” točka.