PDA

View Full Version : [DB/PostgreSQL] Consentire solo chiamate a stored procedure


WarDuck
19-11-2012, 21:34
Esperti di DB, e in particolare di PostgreSQL a me... :D.

Come da titolo ragazzi, c'è un modo per consentire esclusivamente chiamate a stored procedure, senza dare accesso alle tabelle?

Se nego il permesso di SELECT ad un utente e ho una stored procedure che invoca SELECT su quella tabella mi dà permission denied.


Grazie a chiunque possa aiutarmi.

WarDuck
21-11-2012, 12:50
Ok, dato che ho trovato una soluzione la posto:

L'idea è quella di far eseguire la STORED PROCEDURE nel contesto dell'utente proprietario e non dell'utente loggato.

Per far questo è sufficiente modificare da pgAdmin la stored procedure selezionando l'apposita casella nella tab Opzioni.

Chiaramente è consigliabile che il proprietario sia un utente a cui non è possibile loggarsi da fuori e che non abbia alcun privilegio particolare di gestione del DB.

wingman87
21-11-2012, 12:55
Interessante, grazie per l'informazione :)