[Technik] Functions, Triggers und (Procedural) Languages in PostgreSQL, Was: Re: postgresql-contrib-8.1
Michael Hierweck
team at edv-serviceteam.net
Tue May 6 13:41:38 CEST 2008
Christof Donat wrote:
> Hi,
>
>> User können keine Funktionen in "nicht trusteted languages" definieren.
>
> Ah, da lag mein Denkfehler. Ich kann also dann z.B. PL/R verwenden, wenn ich
> es brauche, aber eben nur die Funktionen, die das Sprachmodul meinem User
> zubilligt. OK. Ich habe in deiner Liste intuitiv "PL/C" hinzugefügt und mich
> gewundert ;-)
ja - sofern PL/R einen "Safe Mode" hat und der Superuser PL/R per CREATE
TRUSTED LANGUAGE... verfügbar gemacht hat.
Der Superuser muss inbesondere aufpassen, nicht etwa PL/X als TRUSTED
LANGUAGE verfügbar zu machen, obwohl X keinen Safe Mode hat. Dann könnte
nämlich ein User eine Funktion in X definieren, die am Sicherheitsmodell
von von PostgreSQL vorbeigreifen kann.
Nicht alle PL/*-Sprachen haben einen Safe Mode, also eignen sich als
TRUSTED LANGUAGE - aber: bestimmte Sprachen, z.B. PL/PERL können als
TRUSTED oder nicht TRUSTED ausgeführt werden. Im zweiten Fall stehen
dann mehr Funktionen zur Verfügung, z.B. Filesystem-Operationen.
(Anm.: Damit wäre es beispielweise möglich, in hsadmin die
Aktualisierung einer Konfigrationsdatei per UPDATE/INSERT-Trigger auf
der entsprechenden Objekt (TABLE/VIEW) auszuführen. Mir ist klar, dass
unser hsadmin-Modell überlegen ist.)
Viele Grüße
Michael
--
EDV-Serviceteam Werthmann & Hierweck GbR
Annika Werthmann, Michael Hierweck
Egerstraße 53, 44225 Dortmund
http://www.edv-serviceteam.net
More information about the Technik
mailing list