DevSecOps VS SecOps: cosa sono, in cosa differiscono e quale scegliere
Due approcci alla sicurezza IT a confronto: guida per orientarsi nella scelta
L’ICT propone modelli di ciclo di vita ed esecuzione del software sempre più integrati e sempre più stringenti per il successo dell’azienda.
In passato, l’area IT doveva costruire manualmente l’infrastruttura sulla quale il codice potesse essere testato e distribuito, mantenendo una distanza tra i due team dei developer e delle IT operations. Successivamente l’infrastruttura è stata resa accessibile via software, permettendo l’integrazione dei due team: siamo arrivati all’approccio DevOps, nel quale l’intero processo è stato automatizzato.
Le risorse infrastrutturali sono quindi modulate direttamente nella fase di sviluppo: per la gran parte, i colli di bottiglia possono essere evitati nei normali cicli della filosofia CI/CD – continuous integration, continuous delivery.
Con DevOps si intende quindi la combinazione di strumenti, pratiche e filosofie che permettono di fornire servizi e applicazioni ICT con cicli di lavoro integrati e di breve durata.
SecOps: che cosa vuol dire?
Così come DevOps sottintende la fusione dei team e delle competenze di IT operations e Development, SecOps fonde i team di security e IT operations. SecOps è quindi una metodologia che mira ad automatizzare le attività di sicurezza, combinandole con le competenze IT Operations.
La sicurezza è certamente una attività mission critical, che richiede evoluzioni continuamente imposte da variazioni tecnologiche o normative, come le più recenti NIS2 e DORA.
Il team SecOps è in grado di considerare le minacce alla sicurezza durante l’intero ciclo di sviluppo e come queste minacce potrebbero influenzare sia il software sia gli utenti. L’azione di sicurezza in SecOps cerca di essere proattiva, prevenendo i rischi nella loro fase iniziale, prima che diventino un problema difficile da gestire.
Anche in questo caso, come per i DevOps, risorse generalmente viste come silo monolitico – quelle destinate alla sicurezza – vengono rese disponibili alle altre fasi di sviluppo e distribuzione di soluzioni. Quindi, non si avrà più un team di sicurezza isolato dagli altri ma il senior developer apprenderà dal security expert e viceversa.
DevSecOps: che cosa vuol dire?
Il processo di integrazione dei team può essere ulteriormente raffinato. È, infatti, quello che succede modificando la metodologia per la coesistenza da due a ben tre team quali IT Operations, Developer e Security. Siamo giunti al DevSecOps, un approccio nel quale le necessità di sicurezza vengono inserite nella robusta trama DevOps.
Adottando la metodologia DevOps in modo separato dalla sicurezza, la linearità del flusso di lavoro risentirebbe comunque del confronto con un team di sicurezza ovviamente anch’esso separato.Con la metodologia DevSecOps (DevOps + Security), invece, gli aspetti critici del controllo sulle vulnerabilità del codice e delle modalità d’erogazione dei servizi vengono considerati tutti insieme, fin dalle fasi iniziali dello sviluppo.
Questo procedimento aiuta l’integrazione non solo nello sviluppo del software, ma anche di competenze e sensibilità che devono essere ben distribuite nei membri del team complessivo. In particolare, DevSecOps:
- fa in modo che la sicurezza dei dati non faccia da collo di bottiglia nel ciclo di sviluppo e di rilascio DevOps
- permette a tutti i membri dei team di condividere l’impegno nella tutela dei dati
- rende la sicurezza un elemento chiave grazie all’automazione, facendo rientrare il software nella categoria del security by design per l’intero ciclo di vita
- implementa test che identificano sezioni dubbie del codice e le rimandano al team di sviluppo prima della messa in produzione
I Direttori IT devono creare le condizioni affinché sicurezza e velocità possano coesistere nel ciclo di sviluppo. DevSecOps risolve questo nodo, aumentando al contempo la sensibilità del team verso pratiche apparentemente valide ma che nascondono rischi ancora inesplorati.
DevSecOps VS SecOps: quale scegliere?
Le due metodologie sono sostanzialmente molto simili. Questa somiglianza si fa più sottile se l’azienda è già ben addentro al processo di trasformazione in chiave DevOps.
Per una corretta scelta, gli approcci SecOps e DevSecOps devono essere confrontati in fase di valutazione del singolo progetto. Il livello di automazione e l’esposizione ad attacchi possono fare la differenza.
Ovviamente si tratta di una alternativa solo temporanea. Anche se con modalità più o meno lineari, la trasformazione digitale in atto sta portando verso un’inevitabile adesione al modello completo DevSecOps.
Inoltre, se un’azienda costituisce un nuovo team di sviluppo – o se si costituisce una nuova azienda – la scelta migliore è di aderire fin dall’inizio alla metodologia DevSecOps, con un approccio security by design integrato fin dalla prima riga di codice. In questo caso, il vantaggio competitivo verso chi non aderisce completamente sarà determinante nel successo dell’acquisizione di clienti.