Requisiti di Sicurezza

I requisiti di base di un DataBase Management System (DBMS) non sono simili ai requisiti di sicurezza di altri sistemi. Alcuni di questi requisiti sono:

Esaminano brevemente questi requisiti.


Integrità del DB

Gli utenti di un Database (DB) devono potersi fidare dell'accuratezza dei valori dei dati. Ciò implica che il DBMS si deve assicurare che gli aggiornamenti siano fatti solo attraverso singole autorizzazioni. Inoltre i dati devono essere protetti sia dall'azione di programmi esterni illegali sia da forze esterne come caduta di tensione o incendi. Due situazioni possono avere effetto sull'integrità del DB:

  1. Il danneggiamento dell'intero sistema
  2. Impossibilità della lettura di dati
L'integrità del DB è completa responsabilità del DBMS, del sistema operativo, e del manager di sistema. Dal punto di vista del sistema operativo e del manager di sistema, DB e DBMS sono rispettivamente files e programmi. Una forma di protezione del DB, quindi, può essere data da un regolare backup di tutti i file del sistema. Periodici backup di un DB possono essere controlli adeguati contro fallimenti catastrofici. Se è importante ricostruire il DB dal punto in cui si è verificato un errore, il DBMS deve mantenere un log delle transazioni.


Integrità degli elementi

Quando si parla dell'integrità degli elementi di un DB si riferisce alla loro correttezza e alla loro accuratezza. Gli utenti autorizzati sono responsabili dell'introduzione corretta dei dati, ma essi spesso possono commettere errori. I DBMS talvolta aiutano gli utenti a trovare una errore appena immesso e a correggere errori dopo che sono stati inseriti. Inoltre mantengono l'integrità di ogni oggetto nel DB in tre modi.


Verificabilità degli accessi agli elementi del DB

In qualche applicazione può essere utile generare un record di verifica di tutti gli accessi, in lettura e in scrittura, a un DB. Questo record può aiutare a mantenere l'integrità di un DB, o al limite, a scoprire chi e quando ha introdotto certi valori.


Controllo degli accessi

I DB sono spesso separati logicamente attraverso accessi privilegiati. Per esempio, tutti gli utenti possono essere autorizzati ad accedere dati generali, ma solo il personale di un dipartimento può ottenere i dati degli stipendi e solo un dipartimento di marketing può ottenere i dati sui prezzi. I DB sono molto usati poichè centralizzano la memorizzazione e la manutenzione dei dati. Gli accessi limitati sono sia una responsabilità sia un beneficio di questa centralizzazione. Il DBA specifica a chi dovrà essere consentito l'accesso a questi dati, a livello di campo, di record, o persino di elemento. I DBMS devono rafforzare questa politica, autorizzando accessi a tutti i dati specificati o non consentendoli dove proibito. Il numero di modi di accesso possono essere molteplici. Un utente o un programma può avere diritto di lettura, di modifica, di cancellazione, di accodamento di un valore etc. Superficialmente, i controlli di accessi per un DB sembrano simili ad accessi di controllo per sistemi operativi, o altri tipi di componenti di sistemi di computazione. Tuttavia, i problemi per un DB sono più complicati. Gli oggetti di un sistema operativo, come i file, non sono correlati tra loro, invece record, campi ed elementi di un DB lo sono. Inoltre, in un sistema operativo un utente non puņ determinare il contenuto di un file leggendone altri, potrebbe, invece, determinare il valore di un dato di un DB. Il problema di conoscere valori di dati da altri dati è chiamato inferenza.


Autenticazione degli utenti

I DBMS possono richiedere rigorose autenticazioni utente. Per esempio, potrebbe richiedere a un utente di superare sia specifiche password sia controlli giornalieri. Quest'autenticazione è aggiunta a quella gestita dal sistema operativo. Tipicamente, il DBMS gira come un'applicazione sul sistema operativo. Ciò significa che non ha canali fidati con il sistema operativo, e deve stare attento a ogni dato che riceve, inclusa quindi l'autenticazione utente.


Disponibilità

Un DBMS ha caratteristiche sia di un programma sia di un sistema operativo. E' un programma che usa risorse HW e SW, malgrado che a molti utenti appaia come un'unica semplice applicazione. La disponibilità è un requisito fondamentale per la gestione della sicurezza dei dati su un DB. Un problema potrebbe essere quello di nascondere qualche dato non protetto allo scopo di evitare la scoperta di dati protetti.




 Torna Inizio Pagina Pagina Successiva DIA - Dipartimento di
Informatica ed Applicazioni
http://www.oracle.com