Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Grant create any trigger vs Grant create trigger

In den meisten Fällen ist der Besitzer des Triggers auch der Besitzer der Tabelle (oder Ansicht), auf der der Trigger basiert. In diesen Fällen kann der Tabelleneigentümer mit CREATE TRIGGER Erstellungsauslöser für seine eigene Tabelle erstellen.

CREATE ANY TRIGGER ermöglicht es dem Benutzer, einen Trigger zu erstellen, der einem beliebigen Benutzer für eine beliebige Tabelle gehört. Es ist eine große Sicherheitslücke, da sie einen Trigger erstellen können, der einem privilegierten Benutzer gehört, auf einer Tabelle, die sie besitzen oder in die sie einfügen können. Da sie in diese Tabelle einfügen können, können sie die Ausführung des Triggers erzwingen, und der Trigger wird mit den Rechten des Triggerbesitzers ausgeführt. Der Effekt ist, dass ein Benutzer mit der Berechtigung CREATE ANY TRIGGER Code als privilegierter Benutzer erstellen und ausführen kann (ähnlich wie CREATE ANY PROCEDURE plus EXECUTE ANY PROCEDURE).

Beschränken Sie sich auf so wenige Personen wie möglich und prüfen Sie angemessen.