Was nicht wirklich funktioniert ist:
- SELECT Rechte auf Tabelle pg_proc wegnehmen. Man sieht dann nicht mal mehr normale Tabellen angezeigt. Außerdem poppt laufend eine Error Box hoch "ERROR: permission denied for relation pg_proc" und zwar nicht nur wenn man auf das Funktionen Icon drückt.
- SECURITY DEFINER für eine Funktion setzen, hat natürlich nur was mit der Ausführung zu tun.
- Verschlüsselung des plpgsql codes ist auf der offiziellen ToDo Liste als unerwünschtes feature deklariert... kommt also auch nicht irgendwann mal.
Unsere gesamte Business Logik liegt als Funktionen in der DB und wir liefern unsere DB auch in Kopierstaaten (China, Taiwan, Korea,...) aus.
Unser Gedanke war pgAdminIII also einfaches Viewer Tool mitzuliefern und die Benutzerrechte so einzustellen, dass der Benutzer keinen Schaden anrichten kann und den plpgsql code nicht auslesen kann.
