Tutti i più moderni RDBMS adottano una architettura di sicurezza basata
su tre differenti livelli di protezione:
- autenticazione: questa è la fase più delicata
che contempla la verifica dell'identità dell'utente attraverso una
password generalmente nota soltanto allo stesso; - autorizzazione: è la fase immediatamente seguente
l'autenticazione nella quale il sistema deve determinare a quali risorse l'utente
può avere accesso e con quali modalità operative. Di regola
le differenti attività che coinvolgono tale fase vengono comunemente
raggruppate sotto la terminologia di "amministrazione della sicurezza
degli utenti" ; - auditing: questa fase si contraddistingue per l'adozione
di mezzi idonei ad identificare e riconoscere possibili abusi oltre che ad
assicurare l'integrità delle informazioni;
La gestione dei rischi
Quando si parla di sicurezza dei database si intende principalmente fare riferimento
alla necessità di garantire la cd. accessibilità dei dati, a prescindere
dal loro valore intrinseco. Qualunque attività diretta ad implementare
e/o rafforzare la sicurezza di questi sistemi presuppone il rispetto dei seguenti
principi:
- la definizione di pratiche e procedure di sicurezza chiare e di facile
attuazione; - la predisposizione di livelli di sicurezza multipli;
- l'applicazione costante del principio "dei privilegi minori";
È importante non sottovalutare l'efficacia di questi criteri ed, in particolare,
di quelli indicati nei punti 2 e 3. In effetti senza la presenza di "strati"
di sicurezza multipli diventa estremamente facile connettersi ad un database
sfruttando la presenza di account noti e con password di default oppure bypassando
la sicurezza del sistema operativo e dei vari dispositivi che compongono l'infrastruttura
di rete (firewall, router, IDS, ecc...).
Analogamente il principio dei privilegi minori, in virtù del quale ogni
utente deve avere assegnati soltanto i privilegi strettamente indispensabili
al compimento delle sue attività, evita i danni che possono derivare
da un uso improprio (leggi abuso) oppure da azioni compiute in modo accidentale.
L'applicazione pratica degli standard di sicurezza
L'attuazione dei principi appena enunciati non può prescindere dalla
considerazione di alcuni aspetti fondamentali tra i quali meritano di essere
ricordati i seguenti:
- segretezza e confidenzialità: i dati devono poter
essere consultati e/o modificati soltanto da parte di chi sia debitamente
autorizzato; - integrità ed autenticità: i dati non devono
poter essere manipolati dolosamente od accidentalmente e la loro provenienza
deve essere verificabile; - accessibilità: i dati devono essere sempre disponibili
eventualmente anche attraverso il loro immediato ripristino;
Gli aspetti maggiormente coinvolti nel processo di hardening di un RDBMS sono
i seguenti:
- configurazione iniziale;
- autenticazione degli utenti;
- autorizzazione all'uso degli oggetti del database;
- amministrazione e l'aggiornamento delle policies;
- auditing;
- strategie di backup e di ripristino dei dati;