economia news e media viaggi informatica internet salute e benessere int rattenimento e spettacolo sport tempo libero istruzio ne e formazione arte cultura scienza

Sicurezza

Sicurezza dei database (prima parte)

A cura di Andrea Silvestri

Pubblicato il 14/10/2001

Creazione e gestione degli utenti.

Questa serie di interventi analizzera' le diverse istruzioni sql che permettono di gestire la sicurezza di un database relazionale, in particolare si soffermeranno sulla creazione degli utenti e dei ruoli, gestione delle password, utilizzo delle viste e dei sinonimi.
In questo intervento focalizzeremo l'attenzione sulla creazione degli utenti, analizzando quindi l'istruzione CREATE USER(faro' riferimento alla sintassi Oracle, ma gli esempi saranno utilizzabili facilmente anche sugli altri rdbms):

CREATE USER scott
IDENTIFIED BY tiger

Con questa istruzione viene creato un utente scott con password tiger; quindi ogni volta che l'utente scott cerchera' di connettersi al db dovra' fornire la password tiger.
E' possibile fare in modo che l'utente venga autenticato esternamente, ad esempio dal sistema operativo:

CREATE USER scott
IDENTIFIED EXTERNALLY

L'istruzione CREATE e' in realta' piu' complessa, in quanto permette di specificare opzioni (non direttamente legate alla sicurezza) sulla memorizzazione delle informazioni di proprieta' dell'utente, come ad esempio i tablespace o definire una quota massima assegnata all'utente.
Una volta creato, l'utente puo' essere modificato tramite l'istruzione ALTER USER:

ALTER USER scott
IDENTIFIED BY prova

Anche questa istruzione consente di specificare una nuova quota o un diverso tablespace.
Altra istruzione fondamentale e' quella che consente di eliminare un utente non piu' utilizzato, la DROP USER:

DROP USER scott;

Se pero' l'utente possiede degli oggetti (tavole, viste, procedure..) non viene cancellato a meno di specificare l'opzione CASCADE, che elimina anche tutti gli oggetti:

DROP USER scott CASCADE;

Per definire cosa l'utente puo' fare in un database, si utilizzano i privilegi ed i ruoli. Un privilegio rappresenta un permesso su un certo oggetto, come la creazione di una tabella, l'inserimento, la cancellazione o la lettura di record da una tabella o l'esecuzione di una procedura.
I ruoli sono composti da uno o piu' privilegi e vengono creati per semplificare la gestione degli utenti, in quanto permettono di concedere gli stessi privilegi a piu' utenti contemporaneamente.
Per ora e' tutto, nel prossimo intervento verra' approfondito il concetto di ruolo.

I link correlati all'argomento

Vuoi essere aggiornato sulle novità della guida?

Feed RSS XML vostro feed RSS