Skip to main content
  1. Concetti/

Data Classification e Ciclo di Vita del Dato

·7 mins
Alessio Barnini
Author
Alessio Barnini
Table of Contents

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).

data-states-at-rest-transit-in-use.webp

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. La tabella users con 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.

LivelloImpatto se divulgatoChi puo accedereEsempio
Top SecretDanno eccezionalmente grave alla sicurezza nazionaleClearance specifica + Need-to-knowPiani militari, operazioni intelligence
SecretDanno grave alla sicurezza nazionaleClearance Secret + Need-to-knowProgetti di sistemi d'arma
ConfidentialDanno alla sicurezza nazionaleClearance Confidential + Need-to-knowPerimetri di basi operative
UnclassifiedNessuna restrizione formaleChiunque (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.

LivelloDescrizioneEsempiEnforcement tipico
PublicDisponibile a chiunque senza restrizioniBrochure, press release, contenuti sito webNessuno
Private/InternalUso interno, danno minimo se divulgatoPolicy interne, email aziendali, procedureAccesso autenticato
ConfidentialDanno grave se divulgato esternamente, NDADati salariali, brevetti, listini prezzi, PIIRBAC + cifratura
Restricted/SensitiveObblighi normativi esterni, danno criticoPCI DSS data, PHI, credenziali, segreti industrialiDLP + 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.

AcronimoEspansioneDescrizioneNormativa associata
PIIPersonally Identifiable InformationQualsiasi dato che identifica un individuo (nome, email, SSN, indirizzo)GDPR, CCPA
PHIProtected Health InformationDati sanitari personali (diagnosi, cartelle cliniche, assicurazione)HIPAA
IPIntellectual PropertyBrevetti, trade secret, codice sorgente proprietario, formula Coca-ColaCopyright, Patent law
PANPrimary Account NumberNumero 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
StatoDoveControllo principaleVulnerabilita tipica
At RestDisco, database, backupCifratura AES-256, access controlDisco rubato, backup non cifrato, cloud bucket pubblico
In TransitRete, internetTLS 1.3, VPN IPsecMITM, SSL stripping, intercettazione
In UseRAM, CPU, cacheTEE (Trusted Execution Environment), HSMMemory 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.

MetodoMedia compatibileRiutilizzoNote
Purge / WipeHDD magneticoSiSovrascrittura multi-pass a livello bit (DoD 5220.22-M)
Secure EraseSSDSi (tool vendor)Flash memory richiede processo dedicato del vendor
DegaussHDD magnetico, nastriNastri si, HDD noCampo magnetico potente. NON funziona su SSD o ottico
Physical DestructionSSD, HDD, otticoNoUnico metodo garantito per SSD
ShreddingCartaNoCross-cut shredder (non strip-cut)
PulpingCarta (post-shred)NoRiduce 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/sdX su Linux per "pulire" un disco, stavi facendo wiping. Il comando shred -u su 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.

AspettoDettaglio
Scopo principaleLimitare l'esposizione legale: meno dati conservi, meno dati devi consegnare a un giudice
Scopo secondarioRidurre consumo di storage e costi di backup
Chi la definiscePolicy aziendale, vincolata dai minimi di legge
Minimi di leggeSOX: 7 anni per record finanziari. PCI DSS: 1 anno per log. GDPR: non oltre la necessita
Rischio senza policyUna court order puo esigere 10 anni di archivi
Legal HoldSovrascrive la retention policy: blocca la cancellazione durante litigii

Dev parallel: logrotate in Linux con rotate 14 o TTL index di MongoDB (expireAfterSeconds) sono retention policy in codice. LOG_DAYS=14 in 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.

RuoloChi e'Responsabilita'Puo' cambiare la policy?
Data OwnerRuolo 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 CustodianRuolo 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 StewardRuolo governance/complianceGarantisce qualita', consistenza e conformita' del dato. Definisce standard di formato e integrità.No - governa la qualita', non la policy di sicurezza
Data UserDipendenti che usano il datoUsa 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 DLPDove operaCosa protegge
Endpoint DLPSu ogni workstationImpedisce copia su USB, upload non autorizzati
Network DLPSul traffico di reteBlocca email con dati sensibili, upload verso siti non autorizzati
Storage DLP / Cloud DLPSu file server e cloud storageScansiona 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.

Related