Recht um 'create function' auszuführen

dcst55

Aktiver Benutzer
Beiträge
48
Hallo zusammen,
ich arbeite mich neuerdings in MariaDB ein und frage mich, wieso ich SUPER-Rechte benötige um eine Function anzulegen?
Dabei reicht es nicht einmal aus, dass ich 'all privileges' für die entsprechende DB habe..
Kann mir da jemand eine logische, nachvollziehbare Antwort für geben? und wie verhält sich das bei PostgreSQL? Wird das bei PostgreSQL und co genauso behandelt?

Ich habe auch gelesen, dass ich mit
set global log_bin_trust_function_creators = 1;
die Sicherheitsrichtlinien auflockere und so Funktionen anlegen kann... Was genau bewirkt das aber genau? und wieso ist es im default deaktiviert??
 
Werbung:
PostgreSQL:

Code:
test=*> select usename,usecreatedb, usesuper, userepl, usebypassrls from pg_user where usename = 'testuser';
 usename  | usecreatedb | usesuper | userepl | usebypassrls
----------+-------------+----------+---------+--------------
 testuser | f           | f        | f       | f
(1 row)
test=*> create or replace function demo() returns bool as $$begin raise notice 'in der function'; return true; end; $$language plpgsql;
CREATE FUNCTION
test=*> select * from demo();
HINWEIS:  in der function
 demo
------
 t
(1 row)
 
Ist die Frage, wieso MariaDB hier aus der Reihe tanzt?!
Begebe ich mich großartig in Gefahr, wenn log_bin_trust_function_creators auf 1 setze?
Ich kann es nicht so ganz einschätzen...
 
Werbung:
:D Wenn man sich so deine Beiträge so anschaut, meint man, du würdest auf Provisionsbasis die Werbetrommel für PostgreSQL rühren :p
Schade aber da bin ich an die Applikationsentwickler gebunden...
 
Zurück
Oben