nis2-agile/docs/ANALISI_GAP_ANALYSIS_ACN.md
DevEnv nis2-agile 09f51795c1 [DOCS] Analisi normativa: verifica finding revisore Gap Analysis ACN su fonti ACN
Verifica punto-per-punto delle affermazioni del revisore (GV.RR-04, GV.PO-01,
codifica importanti/essenziali) contro i testi ufficiali ACN. Esito: finding
fondato; imprecisioni di contorno documentate. Razionale del modulo Gap Analysis ACN.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-01 11:57:37 +02:00

109 lines
7.5 KiB
Markdown

# Analisi: Gap Analysis Art. 21 vs. misure di base ACN
> **Data:** 2026-06-01
> **Origine:** finding di un revisore sulla pagina guida cap. 5 ("Gap Analysis — le 10 misure dell'Art. 21").
> **Metodo:** verifica diretta sui documenti ACN ufficiali presenti nel repo (`docs/nis2/allegati_acn/Allegato{1,2,3,4}.txt`, PDF), sui 203 requisiti strutturati, sul questionario reale dell'app, con riscontro in rete sul sito ACN.
> **Esito:** il revisore ha ragione sul punto sostanziale. Modulo **Gap Analysis ACN** implementato (prod v1.13.0). Vedi `docs/sql/036_acn_gap_assessment.sql`, `application/controllers/AcnAssessmentController.php`, `application/data/acn_measures.json`, `public/acn-gap.html`.
---
## Il finding del revisore (trascrizione)
> Ha frainteso completamente il senso dell'Analisi GAP.
>
> La normativa prevede che alcune persone chiave dell'organigramma dimostrino di avere una preparazione / esperienza / certificazione adeguata al ruolo — REQUISITO GV.RR-04.
>
> Sempre la normativa prevede che questo controllo di 'adeguatezza al ruolo' venga formalizzato — REQUISITO GV.PO-01.
>
> ATTENZIONE: la codifica requisiti, che sono 43, è identica sia per soggetti IMPORTANTI che per gli ESSENZIALI; semplicemente per quest'ultimi, su alcuni requisiti, vi sono dei punti in più da rispettare.
---
## Verdetto sintetico
Il revisore **ha ragione**, e l'osservazione è di qualità: ha individuato il gap architetturale reale del prodotto e l'ha ancorato a due requisiti corretti, citati con la stessa logica della Tabella 1 della Determinazione ACN. Le uniche imprecisioni sono di contorno e non intaccano la sostanza.
---
## 1. "Ha frainteso il senso dell'Analisi GAP" → fondato, è il punto vero
La Gap Analysis dell'app (`application/data/nis2_questionnaire.json`, 80 domande, 10 categorie) è costruita sulle **10 lettere dell'Art. 21.2 NIS2** (a→j: risk, incidenti, continuità, supply-chain, ecc.). Questo è il livello **direttiva europea**: generico, di orientamento.
Ma in Italia il metro di conformità **non è** l'Art. 21 in astratto: è la **Determinazione ACN n. 164179 del 14/04/2025**, che declina quelle 10 famiglie in misure e requisiti puntuali con codifica del Framework Nazionale (GV/ID/PR/DE/RS/RC).
| | Misure | Requisiti |
|---|---|---|
| **Soggetti IMPORTANTI** (Allegato 1) | 37 | 87 |
| **Soggetti ESSENZIALI** (Allegato 2) | 43 (= 37 + 6) | 116 (= 87 + 29) |
L'autovalutazione che i soggetti NIS compilano per l'ACN si misura **contro questi 87/116 requisiti**, non contro 10 caselle. L'app, prima dell'intervento, faceva quindi una gap analysis *di primo livello* (utile per capire dove si è messi male) ma **non** la gap analysis di conformità ACN — quella che un CISO/consulente deve realmente produrre. Il revisore chiama questo "fraintendere il senso".
## 2. "GV.RR-04 — persone chiave devono dimostrare adeguatezza al ruolo" → vero nella sostanza, impreciso nei dettagli
Testo ufficiale (Allegato 2, §1.3.2) — GV.RR-04 *"La cybersecurity è inclusa nelle pratiche delle risorse umane"*:
- **punto 1:** il *personale autorizzato* ad accedere ai sistemi rilevanti è individuato *previa valutazione dell'esperienza, capacità e affidabilità*;
- **punto 2:** idem per gli *amministratori di sistema*.
Esiste quindi un requisito di idoneità/adeguatezza del personale al ruolo. Due precisazioni:
- Non sono "persone chiave dell'organigramma" (che evoca il top management): sono **il personale con accesso ai sistemi + gli amministratori di sistema** (profili tecnici/operativi).
- La norma dice *"esperienza, capacità e affidabilità"***non parla di "certificazione"**. La certificazione può essere *un* modo per dimostrarla, non un obbligo.
> Nota: gli *organi di amministrazione e direttivi* compaiono altrove — per **approvare** le misure (GV.RR-02 p.1, GV.PO-01 p.3) — e per la **formazione** del management (Art. 23 D.Lgs 138/2024). Cosa diversa da GV.RR-04.
## 3. "Il controllo di adeguatezza va formalizzato — GV.PO-01" → esatto, confermato dalla tabella ufficiale
GV.PO-01 impone politiche documentate; il punto 1.c) è proprio *"affidabilità delle risorse umane"*. La **Tabella 1 in appendice** all'Allegato mappa l'ambito così:
> **c) Affidabilità delle risorse umane** → GV.RR-04: punti 1, 2 e 4 · GV.PO-01: punti 1, 2 e 3.
Il revisore ha indicato **esattamente la coppia GV.RR-04 + GV.PO-01** che la norma stessa accoppia: dimostra di conoscere il documento.
## 4. "Codifica identica importanti/essenziali, agli essenziali si aggiungono punti" → corretto, con una imprecisione terminologica
Verificato sui 203 requisiti strutturati:
- **Codifica identica:** vero, gli stessi codici (GV.RR-04…) valgono per entrambi; le misure degli importanti sono un **sottoinsieme** di quelle degli essenziali (37 ⊂ 43).
- **6 misure solo per essenziali:** `ID.AM-03`, `PR.AT-02`, `PR.IR-03`, `PR.PS-01`, `PR.PS-03`, `RC.CO-03`.
- **16 misure con punti aggiuntivi** per gli essenziali. Esempio da manuale, proprio GV.RR-04: importanti = punti **1,2,3** / essenziali = punti **1,2,3,4,5**.
- ⚠️ **Imprecisione:** il revisore dice "i requisiti, che sono 43". **43 è il numero di _misure_**, non di requisiti (che sono 116 per gli essenziali, 87 per gli importanti). Confonde i due termini, ma il concetto è giusto.
---
## Riepilogo imprecisioni del revisore (di contorno)
| Affermazione | Realtà normativa |
|---|---|
| "persone chiave dell'organigramma" | personale con accesso ai sistemi + amministratori di sistema (GV.RR-04 p.1-2) |
| "certificazione adeguata al ruolo" | "esperienza, capacità e affidabilità" — la certificazione è una possibile evidenza, non un obbligo |
| "i requisiti, che sono 43" | 43 sono le **misure** (essenziali); i **requisiti** sono 116 (ess.) / 87 (imp.) |
Nessuna di queste intacca la correttezza del punto centrale.
---
## Conseguenza pratica (implementata)
È stato realizzato il modulo **Gap Analysis ACN** di secondo livello, affiancato a quello Art. 21 esistente:
- distinzione **importante vs essenziale** (il soggetto risponde solo ai punti che lo riguardano, filtrati da `organizations.entity_type`);
- mappatura punto-per-punto ai codici GV/ID/PR/DE/RS/RC con i **testi integrali** estratti dagli Allegati ufficiali;
- scoring complessivo + per funzione del Framework Nazionale, piano d'azione sui gap, analisi AI con grounding sui 203 requisiti ACN già in knowledge base;
- output allineato alla logica dell'autovalutazione del portale ACN.
**Numeri del dataset canonico** (`application/data/acn_measures.json`, validati a zero discrepanze):
importanti 37 misure / 87 requisiti · essenziali 43 misure / 116 requisiti.
---
## Fonti ufficiali consultate
- ACN — Modalità e specifiche di base NIS: <https://www.acn.gov.it/portale/en/nis/modalita-specifiche-base>
- ACN — Allegato 1 (soggetti importanti): <https://www.acn.gov.it/portale/documents/d/guest/detacn_nis_specifiche_2025_164179_allegato1>
- ACN — Allegato 2 (soggetti essenziali): <https://www.acn.gov.it/portale/documents/d/guest/detacn_nis_specifiche_2025_164179_allegato2>
- ACN — FAQ misure e notifiche di base: <https://www.acn.gov.it/portale/en/faq/nis/misure-notifiche-base>
- Repo: `docs/nis2/allegati_acn/Allegato{1,2,3,4}.txt` (testi ufficiali), `application/data/acn_measures.json` (87 importanti + 116 essenziali, testi integrali).
> ⚠️ **Da non confondere:** gli **Allegati 1 e 2** della Determinazione contengono le **misure di sicurezza** (importanti / essenziali). Gli **Allegati 3 e 4** contengono invece gli **incidenti significativi di base** (3 = importanti, 4 = essenziali). Riferimento incrociato: memoria `reference_acn_allegati`.