Data Control Language: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 1:
DCL è un linguaggio utilizzato nel SQL per fornire o revocare agli utenti i permessi necessari per poter utilizzare i comandi [[DML]] e [[DDL]], oltre agli stessi comandi DCL (che gli servono per poter a sua volta modificare i permessi su alcuni oggetti).
===Create User, Alter User e Drop User===
Lo standard SQL non specifica in quale modo debba essere possibile creare, eliminare o modificare gli utenti di un database. La maggior parte dei Dbms a tale scopo implementa i comandi non standard CREATE USER (che crea un utente e specifica quali permessi deve avere) e DROP USER (che elimina un utente). Per la modifica, alcuni Dbms implementano ALTER USER, ma non è un comando molto diffuso.
===Grant===
Il comando ''Grant'' fornisce uno o più permessi a un determinato utente su un determinato oggetto del database (es: il permesso di inserimento in una tabella).
====Sintassi del comando Grant====
GRANT ''privilegi''
ON ''oggetti''
TO { PUBLIC | ''nome_utente'' [, ...] }
[ WITH GRANT OPTION ]
PUBLIC indica che il privilegio deve essere assegnato a tutti gli utenti, compresi quelli che verranno creati in seguito e ai quali non verrà espressamente negato.
Se si specifica WITH GRANT OPTION, l'utente avrà la possibilità di assegnare gli stessi privilegi anche ad altri utenti, o eventualmente revocarli.
===Revoke===
Il comando ''Revoke'' revoca uno o più permessi a un determinato utente su un determinato tipo di oggetti (es: il permesso di cancellazione da una tabella).
====Sintassi del comando Revoke====
REVOKE [ GRANT OPTION FOR ] ''privilegi''
ON ''oggetto''
FROM { PUBLIC | ''nome_utente'' [, ...] }
{ RESTRICT | CASCADE }
GRANT OPTION FOR specifica che non si intende eliminare il privilegio in sè, ma il diritto di un certo utente di accordare o revocare tale permesso ad altri.
PUBLIC indica che il permesso viene revocato a tutti gli utenti, compresi quelli che verranno creati in futuro e ai quali non verrà espressamente garantito.
CASCADE indica che bisogna eliminare gli oggetti ai quali nessun utente ha più il permesso di accedere. RESTRICT, che è il valore predefinito, indica che tali oggetti devono essere preservati.
==Voci correlate==
|