Question

Qu'est-ce que ADMINISTRER BASE DE DONNÉES TRIGGER privilège signifie réellement?

J'ai le cas suivant:

J'ai 2 bases de données: DB1 et DB2

DB1 J'ai un déclencheur qui survient après l'ouverture de session sur la base de données et vérifie si ce nom d'utilisateur existe dans une table. Dans le cas contraire soulève erreur d'application comme « Vous n'êtes pas autorisé à se connecter! »

Je créé lien sur DB2 , qui se connecte à DB1 par un nom d'utilisateur, par exemple kupa_dba .

Notez que kupa_dba se trouve pas dans une liste d'accès (dans la table stockant les noms d'utilisateur qui peut se connecter à la base de données)

Si kupa_dba ne pas ADMINISTRER BASE DE DONNÉES TRIGGER que les œuvres de déclenchement, mais si kupa_dba ADMINISTRER BASE DE DONNÉES TRIGGER privilège il n'y a pas d'erreur d'application levée, le déclencheur est ignoré et DB2 peut récupérer des données à partir de DB1

Était-ce utile?

La solution

Le privilège de ADMINISTER DATABASE TRIGGER vous permet de créer des déclencheurs de niveau de base de données (erreur de serveur, connectez-vous, et déclenche logout). Il vous permet également de vous connecter indépendamment des erreurs lancées par un déclencheur de connexion comme un dispositif de sécurité. Si vous avez accidentellement votre déclencheur de avons écrit connexion pour lancer une erreur, peu importe qui vous connecter, par exemple, vous devez permettre à quelqu'un de se connecter pour fixer la gâchette.

Il semble que le déclencheur se comporte comme prévu dans ce cas. Vous ne seriez pas en réalité créer un lien de base de données d'une base de données à un autre en utilisant un compte DBA.

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top