sql >> Database teknologi >  >> RDS >> Oracle

Give oprette en hvilken som helst udløser vs. give oprette udløser

I de fleste tilfælde er udløserens ejer også ejeren af ​​tabellen (eller visningen), som udløseren er baseret på. I disse tilfælde kan tabelejeren med CREATE TRIGGER oprette oprette triggere på deres egen tabel.

OPRET ENHVER TRIGGER giver brugeren mulighed for at oprette en trigger, der ejes af enhver bruger på ethvert bord. Det er et stort sikkerhedshul, fordi de kan oprette en trigger, der ejes af en privilegeret bruger på et bord, som de ejer eller kan indsætte i. Fordi de kan indsætte i den tabel, kan de tvinge triggeren til at udføre, og triggeren udføres med triggerejerens rettigheder. Effekten er, at en bruger med OPRET ENHVER TRIGGER-privilegie kan oprette og udføre kode som en privilegeret bruger (svarende til at have OPRET ENHVER PROCEDURE plus UDFØR ENHVER PROCEDURE).

Begræns til så få personer som muligt, og kontroller passende.



  1. Sådan listes alle lagrede procedurer i MariaDB

  2. Hvordan får man outputparametre fra en lagret procedure i Python?

  3. Kan ikke hente data fra php mysql til Android-aktivitet

  4. Vis alle visninger på Oracle-databasen