FirebirdSQL logo

En-tête du module

L’en-tête contient le nom du module et la description des variables locales. Pour les procédures stockées et les blocs PSQL, l’en-tête peut contenir la description des paramètres d’entrée et de sortie. L’en-tête du déclencheur ne peut pas contenir de paramètres d’entrée et de sortie.

L’en-tête du déclencheur doit contenir un événement (ou une combinaison d’événements), auquel le déclencheur sera appelé automatiquement.

Privilèges d’exécution de code PSQL

Le code PSQL peut être exécuté dans l’un des modes suivants :

  • Avec des privilèges d’utilisateur appelant (privilèges CURRENT_USER) ;

  • En définissant les privilèges de l’utilisateur (propriétaire de l’objet de métadonnées).

Les privilèges d’exécution du module PSQL sont spécifiés dans son en-tête dans la clause optionnelle SQL SECURITY.Si l’option INVOKER est sélectionnée, le module PSQL est exécuté avec les privilèges de l’utilisateur appelant.Si l’option DEFINER est sélectionnée, le module PSQL est exécuté avec les privilèges de l’utilisateur définissant (propriétaire). Ces privilèges seront complétés par des privilèges accordés au module PSQL lui-même à l’aide de l’Instruction GRANT.Par défaut, les procédures, les fonctions sont exécutées avec les privilèges de l’utilisateur appelant, et les déclencheurs héritent des privilèges de sécurité spécifiés pour la table.

Les blocs PSQL anonymes (EXECUTE BLOCK) sont toujours exécutés avec les privilèges de l’appelant.