Exemples de fourniture de privilèges DDL
-- Autoriser l'utilisateur Joe à créer des tables
GRANT CREATE TABLE TO Joe;
-- Permettre à l'utilisateur Joe de modifier toutes les procédures
GRANT ALTER ANY PROCEDURE TO Joe;
Opérateurs pour l'octroi de privilèges et l'attribution de rôles
-- Autoriser l'utilisateur Joe à créer des tables
GRANT CREATE TABLE TO Joe;
-- Permettre à l'utilisateur Joe de modifier toutes les procédures
GRANT ALTER ANY PROCEDURE TO Joe;
L’instruction d’attribution de privilèges pour la création, la suppression et la modification d’une base de données a une forme légèrement différente de l’instruction d’attribution de privilèges DDL pour les autres objets de métadonnées.
CREATEPermet la création d’une base de données.
ALTERPermet de modifier la base de données actuelle.
DROPPermet de supprimer la base de données actuelle.
ALLCombine les privilèges ALTER et DROP par base de données.
Le privilège CREATE DATABASE est un type de privilège spécial car il est stocké dans la base de données de sécurité. La liste des utilisateurs disposant du privilège CREATE DATABASE peut être consultée dans la table virtuelle SEC$DB_CREATORS. Seuls les Administrateurs de la base de données de sécurité peuvent accorder le privilège de créer une nouvelle base de données.
Les privilèges ALTER DATABASE et DROP DATABASE s’appliquent uniquement à la base de données actuelle, tandis que les privilèges DDL ALTER ANY et DROP ANY sur d’autres objets de métadonnées s’appliquent à tous les objets du type spécifié dans la base de données actuelle. Seuls les Administrateurs peuvent accorder des privilèges pour modifier et supprimer la base de données actuelle.