FirebirdSQL logo

Clause GRANTED BY

Lorsqu’on accorde des droits dans une base de données, l’utilisateur actuel est généralement enregistré comme la personne qui accorde les droits. En utilisant la clause GRANTED BY, il est possible d’accorder des droits au nom d’un autre utilisateur. L’utilisation de l’instruction REVOKE après GRANTED BY ne supprimera les droits que s’ils ont été enregistrés par l’utilisateur qui les a supprimés. Pour faciliter la migration depuis d’autres SGBD relationnels, l’instruction non standard AS est prise en charge comme synonyme de l’instruction GRANTED BY.

La clause "accordé par" peut être utilisée :

  • Le propriétaire de la base de données ;

  • `SYSDBA' ;

  • Tout utilisateur ayant des droits sur le rôle RDB$ADMIN et l’ayant spécifié lors de la connexion à la base de données ;

  • Lors de l’utilisation du drapeau AUTO ADMIN MAPPING — tout administrateur Windows (tant que le serveur utilise l’authentification de confiance), même sans spécifier un rôle.

Même le propriétaire du rôle ne peut pas utiliser `GRANTED BY' à moins qu’il ne soit dans la liste ci-dessus.

Privilèges table

Contrairement aux autres objets de métadonnées, les tables et les vues peuvent utiliser plusieurs privilèges.

Liste des privilèges pour les tables
SELECT

Permet de sélectionner des données (SELECT) dans une table ou une vue.

INSERT

Permet d’ajouter une entrée (INSERT) dans une table ou une vue.

UPDATE

Permet de modifier les entrées (UPDATE) dans une table ou une vue. Vous pouvez spécifier des restrictions afin que seules les colonnes spécifiées puissent être modifiées.

DELETE

Permet de supprimer des enregistrements (DELETE) d’une table ou d’une vue.

REFERENCES

Doit être spécifié pour les colonnes sur lesquelles la clé primaire d’une table est construite si elle est référencée par la clé externe d’une autre table.

ALL

Combine les privilèges SELECT, INSERT, UPDATE, DELETE et REFERENCES.