FirebirdSQL logo

Privilège `USAGE'.

Pour utiliser des objets de métadonnées autres que des tables, des vues, des procédures et fonctions stockées, des déclencheurs et des paquets dans des requêtes utilisateur, l’utilisateur doit se voir attribuer le privilège USAGE pour ces objets. Étant donné que les procédures et fonctions stockées, les déclencheurs et les routines de paquets dans Firebird sont exécutés avec des privilèges d’utilisateur appelant, il peut être nécessaire d’attribuer le privilège USAGE à ceux-ci également lors de l’utilisation de tels objets de métadonnées dans ceux-ci.

Note

Dans Firebird 3, le privilège USAGE est vérifié uniquement pour les exceptions (exceptions) et les générateurs/séquences (dans gen_id(gen_name, n) ou next value for gen_name). Des privilèges pour d’autres objets de métadonnées peuvent être inclus dans des versions futures si cela est jugé approprié.

Note

Le privilège USAGE donne uniquement le droit d’incrémenter des générateurs (séquences) en utilisant la fonction GEN_ID ou la construction NEXT VALUE FOR. L’instruction SET GENERATOR est analogue à l’instruction ALTER SEQUENCE …​ RESTART WITH, qui sont des opérateurs DDL. Par défaut, seul le propriétaire du générateur (séquence) a les droits pour de telles opérations. Le droit de définir la valeur initiale de tout générateur (séquence) peut être accordé par GRANT ALTER ANY SEQUENCE, ce qui n’est pas recommandé pour les utilisateurs normaux.

Exemples d’octroi du privilège `USAGE'.

Example 1. Accorder le privilège "USAGE".
-- privilège USAGE sur la cohérence du rôle délivré
GRANT USAGE ON SEQUENCE GEN_AGE TO ROLE MANAGER;

-- privilège USAGE sur la séquence émise au déclencheur
GRANT USAGE ON SEQUENCE GEN_AGE TO TRIGGER TR_AGE_BI;

-- privilège d'exemption USAGE accordé à un paquet
GRANT USAGE ON EXCEPTION E_ACCESS_DENIED
TO PACKAGE PKG_BILL;