Mappa Globale#
Perche Classificare i Dati#
La data classification assegna etichette di sensibilita ai dati per determinare come devono essere protetti, chi puo accedervi e quanto a lungo conservarli. Senza classificazione, tutti i dati vengono trattati allo stesso modo - il che significa o proteggere eccessivamente i dati pubblici (costo inutile) o proteggere insufficientemente i dati critici (rischio).

Il principio base: la classificazione del dato guida le decisioni tecniche. Un file classificato come "Restricted" richiede cifratura at rest, controllo degli accessi RBAC, log di audit, e procedure di distruzione specifiche. Un file "Public" puo stare su un web server aperto.
Dev parallel: Ogni volta che hai aggiunto
@IsGranted('ROLE_ADMIN')in Symfony o un middleware di autorizzazione in Node, stavi implementando controllo di accesso su dati implicitamente classificati come Confidential o Restricted. Non l'hai chiamato cosi, ma e esattamente il concetto. Latabella userscon email, indirizzo, telefono contiene dati Private (PII). I numeri di carta di credito non dovevano neanche passare dal tuo server: regola base PCI DSS.
Classificazione Governo USA#
Il governo degli Stati Uniti usa un sistema a quattro livelli basato sull'impatto che la divulgazione non autorizzata avrebbe sulla sicurezza nazionale.
| Livello | Impatto se divulgato | Chi puo accedere | Esempio |
|---|---|---|---|
| Top Secret | Danno eccezionalmente grave alla sicurezza nazionale | Clearance specifica + Need-to-know | Piani militari, operazioni intelligence |
| Secret | Danno grave alla sicurezza nazionale | Clearance Secret + Need-to-know | Progetti di sistemi d'arma |
| Confidential | Danno alla sicurezza nazionale | Clearance Confidential + Need-to-know | Perimetri di basi operative |
| Unclassified | Nessuna restrizione formale | Chiunque (pubblicamente accessibile) | Comunicati stampa, siti web governativi |
Classificazione Aziendale#
Le aziende private usano un sistema diverso, non standardizzato universalmente. L'importante non e il nome scelto, ma che i dipendenti capiscano il valore dei dati e li trattino di conseguenza.
| Livello | Descrizione | Esempi | Enforcement tipico |
|---|---|---|---|
| Public | Disponibile a chiunque senza restrizioni | Brochure, press release, contenuti sito web | Nessuno |
| Private/Internal | Uso interno, danno minimo se divulgato | Policy interne, email aziendali, procedure | Accesso autenticato |
| Confidential | Danno grave se divulgato esternamente, NDA | Dati salariali, brevetti, listini prezzi, PII | RBAC + cifratura |
| Restricted/Sensitive | Obblighi normativi esterni, danno critico | PCI DSS data, PHI, credenziali, segreti industriali | DLP + cifratura + audit log + procedure distruzione speciali |
Tipi di Dati Sensibili#
Oltre ai livelli di classificazione, esistono categorie specifiche che compaiono spesso nelle normative e nell'esame.
| Acronimo | Espansione | Descrizione | Normativa associata |
|---|---|---|---|
| PII | Personally Identifiable Information | Qualsiasi dato che identifica un individuo (nome, email, SSN, indirizzo) | GDPR, CCPA |
| PHI | Protected Health Information | Dati sanitari personali (diagnosi, cartelle cliniche, assicurazione) | HIPAA |
| IP | Intellectual Property | Brevetti, trade secret, codice sorgente proprietario, formula Coca-Cola | Copyright, Patent law |
| PAN | Primary Account Number | Numero della carta di credito (16 cifre Visa/Mastercard) | PCI DSS |
Stati del Dato#
Ogni dato esiste in uno di tre stati, ognuno con vulnerabilita e controlli diversi.
flowchart LR
subgraph REST[Data at Rest]
DISK[Disco / SSD]
DB[Database]
S3[Cloud Storage\nS3, Blob]
end
subgraph TRANSIT[Data in Transit]
TLS[TLS 1.3\nHTTPS/VPN]
VPN2[IPsec\nSite-to-Site]
end
subgraph USE[Data in Use]
CPU2[CPU / RAM]
TEE[TEE - Trusted\nExecution Env]
end
REST -->|Trasferimento| TRANSIT -->|Elaborazione| USE
USE -->|Scrittura| REST
| Stato | Dove | Controllo principale | Vulnerabilita tipica |
|---|---|---|---|
| At Rest | Disco, database, backup | Cifratura AES-256, access control | Disco rubato, backup non cifrato, cloud bucket pubblico |
| In Transit | Rete, internet | TLS 1.3, VPN IPsec | MITM, SSL stripping, intercettazione |
| In Use | RAM, CPU, cache | TEE (Trusted Execution Environment), HSM | Memory scraping, cold boot attack, hypervisor escape |
Data Lifecycle#
Il ciclo di vita del dato attraversa sei fasi, ognuna con controlli e responsabilita specifiche.
flowchart LR CREATE[Create\nClassificazione\ninitiale] STORE[Store\nCifra at rest\nAccess control] USE2[Use\nMonitora accessi\nAudit log] SHARE[Share\nDLP enforcement\nNeed-to-know] ARCHIVE[Archive\nRetention policy\nCold storage] DESTROY[Destroy\nSanitizzazione\nCOD] CREATE --> STORE --> USE2 --> SHARE --> ARCHIVE --> DESTROY
La classificazione assegnata nella fase Create deve seguire il dato per tutto il ciclo. Un documento classificato come Confidential resta Confidential quando viene archiviato e quando viene distrutto - la procedura di distruzione dipende dalla classificazione.
Metodi di Distruzione dei Dati#
La sanitizzazione garantisce che i dati vengano rimossi o distrutti definitivamente prima dello smaltimento. Cancellare un file o formattare un disco NON e sufficiente: i dati rimangono recuperabili con tool forensi finche non vengono sovrascritti o il media fisicamente distrutto.
| Metodo | Media compatibile | Riutilizzo | Note |
|---|---|---|---|
| Purge / Wipe | HDD magnetico | Si | Sovrascrittura multi-pass a livello bit (DoD 5220.22-M) |
| Secure Erase | SSD | Si (tool vendor) | Flash memory richiede processo dedicato del vendor |
| Degauss | HDD magnetico, nastri | Nastri si, HDD no | Campo magnetico potente. NON funziona su SSD o ottico |
| Physical Destruction | SSD, HDD, ottico | No | Unico metodo garantito per SSD |
| Shredding | Carta | No | Cross-cut shredder (non strip-cut) |
| Pulping | Carta (post-shred) | No | Riduce carta sminuzzata a poltiglia |
Certificate of Destruction (COD): certificazione scritta che la distruzione e avvenuta correttamente. Obbligatoria quando la distruzione e eseguita da terzi o fuori sede. Gli auditor la richiedono come prova.
Dev parallel: Se hai mai usato
dd if=/dev/zero of=/dev/sdXsu Linux per "pulire" un disco, stavi facendo wiping. Il comandoshred -usu Linux fa file shredding: sovrascrive il file con pattern casuali prima di eliminarlo. Stessa logica del paper shredder, ma per file digitali.
Retention Policy#
Una retention policy definisce per quanto tempo i dati vengono conservati prima della distruzione. Lo scopo principale non e risparmiare spazio: e limitare l'esposizione legale.
| Aspetto | Dettaglio |
|---|---|
| Scopo principale | Limitare l'esposizione legale: meno dati conservi, meno dati devi consegnare a un giudice |
| Scopo secondario | Ridurre consumo di storage e costi di backup |
| Chi la definisce | Policy aziendale, vincolata dai minimi di legge |
| Minimi di legge | SOX: 7 anni per record finanziari. PCI DSS: 1 anno per log. GDPR: non oltre la necessita |
| Rischio senza policy | Una court order puo esigere 10 anni di archivi |
| Legal Hold | Sovrascrive la retention policy: blocca la cancellazione durante litigii |
Dev parallel:
logrotatein Linux conrotate 14o TTL index di MongoDB (expireAfterSeconds) sono retention policy in codice.LOG_DAYS=14in Laravel e una retention policy applicata ai log applicativi. Se hai mai configurato la rotazione dei log per "non riempire il disco", stavi implementando una retention policy senza chiamarla cosi.
Data Ownership Roles#
In ogni organizzazione, la gestione del dato non ricade su una sola figura. Esistono ruoli distinti con responsabilita' diverse: chi decide la policy, chi la implementa tecnicamente, chi garantisce la qualita', e chi usa il dato per lavorare.
| Ruolo | Chi e' | Responsabilita' | Puo' cambiare la policy? |
|---|---|---|---|
| Data Owner | Ruolo business (es. CFO per dati finanziari, CMO per dati marketing) | Decide il livello di classificazione e le policy d'uso. Responsabile legale in caso di violazione. | Si' - e' la sua prerogativa |
| Data Custodian | Ruolo IT (es. DBA, sysadmin, cloud engineer) | Implementa i controlli tecnici decisi dall'Owner: cifratura, backup, access control. Non decide la policy. | No - esegue le decisioni dell'Owner |
| Data Steward | Ruolo governance/compliance | Garantisce qualita', consistenza e conformita' del dato. Definisce standard di formato e integrità. | No - governa la qualita', non la policy di sicurezza |
| Data User | Dipendenti che usano il dato | Usa i dati per svolgere il proprio lavoro. Ha diritti d'accesso minimi necessari (least privilege). | No |
Esempio concreto: un database con informazioni salariali.
- Data Owner = CFO: decide che i dati salariali sono "Confidential" e che solo HR e Finance possono accedervi
- Data Custodian = DBA: implementa cifratura AES-256 at rest, restringe accesso SQL al gruppo AD
hr-finance, configura audit log - Data Steward = HR Analyst: garantisce che i campi siano compilati correttamente, definisce il formato del campo "stipendio" (valuta, decimali), gestisce le eccezioni
- Data User = Payroll specialist: accede ai record del proprio reparto per elaborare le buste paga
Dev parallel: Come il triangle Owner-BA-Developer in un progetto Symfony: il Product Owner (business) decide COSA costruire e le regole di business. Il Business Analyst definisce COME il dato deve essere strutturato. Il Developer implementa il codice. Se il cliente vuole rendere un campo obbligatorio (classificazione), e' il PO a deciderlo - il dev lo implementa ma non puo' cambiare la regola unilateralmente.
DLP come Enforcement#
Il DLP (Data Loss Prevention) e il meccanismo tecnico che applica la data classification in modo automatico. Ispeziona il contenuto di file, email e trasferimenti di dati, e blocca o segnala le operazioni che violano le policy.
| Tipo DLP | Dove opera | Cosa protegge |
|---|---|---|
| Endpoint DLP | Su ogni workstation | Impedisce copia su USB, upload non autorizzati |
| Network DLP | Sul traffico di rete | Blocca email con dati sensibili, upload verso siti non autorizzati |
| Storage DLP / Cloud DLP | Su file server e cloud storage | Scansiona contenuti, revoca condivisioni pubbliche |
Il DLP usa pattern matching (regex per numeri di carta, SSN, codici fiscali) e machine learning per identificare dati sensibili. Il limite: i falsi positivi (es. bloccare codice sorgente che contiene la parola "password") richiedono tuning costante.
Dev parallel: Azure Purview (Microsoft) e Amazon Macie (AWS) fanno data discovery e classification automatica: scansionano S3 bucket e Azure Blob Storage per rilevare PII, numeri di carta, chiavi SSH. Sono DLP cloud-native integrati nell'infrastruttura. Se usi Microsoft 365, le sensitivity labels di Purview sono la data classification applicata ai documenti Office.


