Matrice dei ruoli (RACI) per i servizi containerizzati
Questa matrice definisce chi fa cosa su ogni servizio containerizzato dell'Ente.
Si applica identica a tutti i servizi; per ciascun servizio va solo compilata la
tabella dei nominativi (in fondo).
Legenda: R = Responsible (esegue) · A = Accountable (risponde del risultato, uno solo per riga) · C = Consulted · I = Informed
Ruoli:
- DEV — Sviluppatore (interno o del fornitore): conosce l'applicazione.
- SYS — Sistemista ICT dell'Ente: gestisce host, rete, storage, registry.
- RS — Referente di servizio ICT (service owner): risponde del servizio verso l'Ente.
- SEC — Referente sicurezza (anche a scavalco su più servizi).
Sviluppo e build
| Attività | DEV | SYS | RS | SEC |
|---|---|---|---|---|
| Codice applicativo e test automatici | R/A | – | I | – |
| Dockerfile e compose del servizio | R/A | C | I | – |
| Scelta base image (dall'elenco approvato) | R | A | I | C |
Pipeline del servizio (.gitlab-ci.yml) | R/A | C | I | C |
.env.example (contratto di configurazione) | R/A | C | I | – |
Piattaforma e infrastruttura
| Attività | DEV | SYS | RS | SEC |
|---|---|---|---|---|
| Host Docker (VM, OS, patch, capacity) | – | R/A | I | C |
| Rete, DNS, certificati, reverse proxy di frontiera | C | R/A | I | C |
| Registry: gestione, retention, elenco base image approvate | C | R/A | I | C |
| Runner CI e loro manutenzione | – | R/A | I | – |
Gestione segreti (CI variables, .env sui server) | C | R/A | I | C |
Rilascio ed esercizio
| Attività | DEV | SYS | RS | SEC |
|---|---|---|---|---|
Merge su main → deploy automatico in staging | R/A | I | I | – |
| Verifica funzionale in staging | R | – | A | – |
| Tag di release (versione semver) | R | – | A | I |
| Approvazione del deploy in produzione | C | C | R/A | I |
| Esecuzione del rollback | C | R | A | I |
| Backup e restore dei dati | C | R/A | I | – |
| Monitoraggio, alert, prima risposta a incidente | C | R | A | I |
| Analisi vulnerabilità (esito Trivy) e piano di rientro | R | C | I | A |
| Aggiornamento periodico base image (rebuild mensile) | R | A | I | C |
Runbook aggiornato (docs/runbook.md) | R | C | A | – |
Fornitori
Quando lo sviluppo è affidato a un fornitore, il fornitore assume il ruolo DEV
con questi vincoli:
| Attività | Fornitore (DEV) | SYS | RS |
|---|---|---|---|
| Consegna repository conforme al blueprint | R | C | A (collaudo) |
Pipeline funzionante fino a scan nel GitLab dell'Ente | R | C | A |
| Accesso agli ambienti dell'Ente | mai diretto: solo via pipeline | A (concede/limita) | I |
| Correzioni su vulnerabilità CRITICAL | R (SLA da contratto) | I | A |
Regola d'oro: il fornitore consegna repository e pipeline, non "immagini via
email" né accessi manuali ai server. Ciò che non passa dalla pipeline non esiste.
Confine netto in una frase
**Lo sviluppatore è responsabile dentro il container (e della pipeline che lo
produce); il sistemista è responsabile sotto e intorno al container (host, rete,
dati, segreti, registry); il referente di servizio decide quando si va in
produzione; la sicurezza decide se un rischio è accettabile.**
Tabella nominativi (da compilare per ogni servizio)
| Servizio | DEV | SYS | RS | SEC | Note |
|---|---|---|---|---|---|
| es. Pratiche | M. Rossi (interno) | L. Bianchi | A. Verdi | G. Neri | – |
| es. Albo Avvisi | Fornitore XYZ | L. Bianchi | A. Verdi | G. Neri | SLA vuln. 15gg |