Documentation PostgreSQL 8.0.25 | ||||
---|---|---|---|---|
Précédent | Arrière rapide | Chapitre 17. Utilisateurs et droits de la base de données | Avance rapide | Suivant |
Les fonctions et les déclencheurs autorisent à l'intérieur du serveur les utilisateurs à insérer du code que d'autres utilisateurs ne connaissent pas mais peuvent exécuter. Par conséquent, les deux mécanismes permettent aux utilisateurs d'utiliser un << cheval de Troie >> contre d'autres avec une relative facilité. La seule protection réelle est d'effectuer un fort contrôle sur ceux qui peuvent définir des fonctions.
Les fonctions sont exécutées à l'intérieur du processus serveur avec les droits au niveau système d'exploitation du démon serveur de la base de données. Si le langage de programmation utilisé par la fonction autorise les accès mémoire non contrôlés, il est possible de modifier les structures de données internes du serveur. Du coup, parmi d'autres choses, de telles fonctions peuvent dépasser les contrôles d'accès au système. Les langages de fonctions qui permettent un tel accès sont considérées << sans confiance >> et PostgreSQL autorise uniquement les superutilisateurs à écrire des fonctions dans ces langages.
Précédent | Sommaire | Suivant |
Droits | Niveau supérieur | Administration des bases de données |