Ergebnis 1 bis 5 von 5

Thema: Trigger hat nich genug Privilegien

  1. #1
    vejazi ist offline Neuer Benutzer
    Registriert seit
    21.04.2009
    Ort
    Berlin
    Beiträge
    5

    Standard Trigger hat nich genug Privilegien

    Ich habe in meiner DB für alle von "normalen" Benutzern nutzbaren Tabellen Views angelegt, die die Zugriffsrechte einschränken. Z.B. kann ein Benutzer von einer bestimmten Tabelle nur ausgewählte Zeilen sehen oder er kann zwar alles sehen aber nichts ändern. Auf die Tabellen kann nur der DB Owner direkt zugreifen.

    Das Problem ist nun folgendes:
    Wenn ein Benutzer aus einer Tabelle etwas löscht, so geschieht dies auch über einen View und funktioniert auch. In der Tablle ist allerdings ein OnDelete Trigger, der in einer weiteren Tabelle Einträge löscht. UND DAS FUNKTIONIERT NICHT. Aus irgend einem Grund werden die Permissions nicht an den Trigger weiter gereicht und das Delete in der Triggerfunktion scheitert mit permission denied.

    Kann man das irgenwie ändern oder war es keine gute Entscheidung, die Zugriffsrechte mit einer eigenen User Tabelle und über Views zu machen?
    Geändert von vejazi (21.04.2009 um 14:50 Uhr)

  2. #2
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von vejazi Beitrag anzeigen

    Das Problem ist nun folgendes:
    Wenn ein Benutzer aus einer Tabelle etwas löscht, so geschieht dies auch über einen View und funktioniert auch. In der Tablle ist allerdings ein OnDelete Trigger, der in einer weiteren Tabelle Einträge löscht. UND DAS FUNKTIONIERT NICHT. Aus irgend einem Grund werden die Permissions nicht an den Trigger weiter gereicht und das Delete in der Triggerfunktion scheitert mit permission denied.

    Kann man das irgenwie ändern oder war es keine gute Entscheidung, die Zugriffsrechte mit einer eigenen User Tabelle und über Views zu machen?
    Kennst Du SECURITY DEFINER?

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  3. #3
    vejazi ist offline Neuer Benutzer
    Registriert seit
    21.04.2009
    Ort
    Berlin
    Beiträge
    5

    Standard

    Zitat Zitat von akretschmer Beitrag anzeigen
    Kennst Du SECURITY DEFINER?
    Nein, kannte ich noch nicht. Sehr guter Hinweis.

    Bleibt bei mir nur noch eine Frage: Ist der DEFINER eigentlich der Owner? Wenn ich zum Beispiel nachträglich einen anderen User als Owner definiere, wer ist dann der DEFINER? Der erste Ersteller oder der aktuelle Owner?

  4. #4
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von vejazi Beitrag anzeigen
    Nein, kannte ich noch nicht. Sehr guter Hinweis.

    Bleibt bei mir nur noch eine Frage: Ist der DEFINER eigentlich der Owner? Wenn ich zum Beispiel nachträglich einen anderen User als Owner definiere, wer ist dann der DEFINER? Der erste Ersteller oder der aktuelle Owner?
    Bei einer Funktion? Der, der sie definiert, ist auch der owner, ausgeführt wird sie aber im Context des Benutzers, der sie ausführt. es sei denn, man setzt SECURITY DEFINER. Dann hat sie die Rechte des Definers. So erstellte Funktionen verhelfen also dem nutzenden User zu mehr bzw. anderen Rechten, dies sollte man beachten.

    Änderst Du den Owner einer Function und diese ist security definer, dann schlägt das natürlich durch.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  5. #5
    vejazi ist offline Neuer Benutzer
    Registriert seit
    21.04.2009
    Ort
    Berlin
    Beiträge
    5

    Standard

    @akretschmer: Danke, das hat mir den Tag gerettet!

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum