Am 31.12.2012 um 22:18 schrieb Adrian Klaver:

> On 12/31/2012 09:02 AM, Philipp Kraus wrote:
>> 
>> Am 31.12.2012 um 15:54 schrieb Adrian Klaver:
>> 
>>> On 12/31/2012 05:41 AM, Philipp Kraus wrote:
>>>> 
>>>> Am 31.12.2012 um 02:11 schrieb Adrian Klaver:
>>>> 
>>> 
>>>>> 
>>>>> Actually as of 9.0 that is not strictly true:
>>>>> http://www.postgresql.org/docs/9.2/interactive/sql-alterdefaultprivileges.html
>>>> 
>>>> I have create a view for access a table and rules for modifiy the
>>>> based table. The table has got a trigger.
>>>> If I run an update on the view, I get an error "permission denied"
>>>> for the trigger call. My user modifies
>>>> only the "view", so do the user also get access to the trigger
>>>> (execution right)? IMHO the trigger is run
>>>> by postgres self, so the user don't need a right on the trigger.
>>> 
>>> Was the error for the trigger or the function the trigger called?
>> 
>> ERROR:  permission denied for schema usermanagement
>> 
>> usermanagement ist ein schema and the base table calls a function within
>> this schema, this
>> checks if the user is super user with
>> 
>> select current_setting('is_superuser') = 'on' into l_issuper;
> 
> So the issue was that the user calling the function did not have access to 
> the schema usermanagement. It is also possible the user did not have EXECUTE 
> privileges on the function either. From your subsequent post I see you 
> discovered SECURITY DEFINER. This is works as you found out. Just be aware 
> that if the user that defined the function is a super user the function has 
> their privileges and all that implies.

At the moment I create a test database with 2 users, one of these users is a 
super user, but later IMHO it can be a security issue. The working user can not 
see or modify the function. Do you have got a tip for a good secure solution. 
My first idea is, that I create all database structure with an user, which is 
later not a super user, so I remove the super user role. 

Thanks

Phil

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to