From: | dipti shah <shahdipti1980(at)gmail(dot)com> |
---|---|
To: | "A(dot) Kretschmer" <andreas(dot)kretschmer(at)schollglas(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: How to get whether user has ALL permissions on table? |
Date: | 2010-04-16 11:02:16 |
Message-ID: | o2xd5b05a951004160402y5692772ei80f06c02add510bf@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hey Kretschemer, the has_table_privilege function returns true in following
situation as well which is wrong.
techdb=> select pc.relname, pc.relacl from pg_class pc, pg_namespace pn
where pc.relnamespace=pn.oid and pn.nspname='techdb' and
pc.relname='techtable';
relname | relacl
--------------+--------------------------------------------------------------
techtable | {postgres=arwdDxt/postgres,=ar/postgres,user1=ar/postgres}
(1 row)
techdb=> SELECT has_table_privilege('user1', 'techdb.techtable', 'SELECT,
UPDATE, DELETE, TRUNCATE, REFERENCES, TRIGGER');
has_table_privilege
---------------------
t
(1 row)
techdb=>
Note that user1 has only insert and select permissions on techtable but
still has_table returns true for all permissions. Am I missing anything?
Thanks,
Dipti
On Thu, Apr 15, 2010 at 4:16 PM, dipti shah <shahdipti1980(at)gmail(dot)com> wrote:
> Okay. Thanks.
>
> Dipti.
>
> On Thu, Apr 15, 2010 at 3:20 PM, A. Kretschmer <
> andreas(dot)kretschmer(at)schollglas(dot)com> wrote:
>
>> In response to dipti shah :
>> > Thanks Kretschmer but I have seen those function. The below query
>> returns error
>> > but you could see that 'user1' has ALL permissions on table 'techtable'.
>> >
>> > techdb=# SELECT has_table_privilege('user1', 'techtable', 'ALL');
>> > ERROR: unrecognized privilege type: "ALL"
>> >
>> > Do I have to run this command as below which includes all permissions
>> > explicitly? Did I miss anything?
>>
>> Right, you have to name all privileges.
>>
>> The desired access privilege type is specified by a text string, which
>> must evaluate to one of the values SELECT, INSERT, UPDATE, DELETE,
>> TRUNCATE, REFERENCES, or TRIGGER.
>>
>> Andreas
>> --
>> Andreas Kretschmer
>> Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header)
>> GnuPG: 0x31720C99, 1006 CCB4 A326 1D42 6431 2EB0 389D 1DC2 3172 0C99
>>
>> --
>> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
>> To make changes to your subscription:
>> http://www.postgresql.org/mailpref/pgsql-general
>>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Jorge Arevalo | 2010-04-16 11:04:15 | Re: Showing debug messages in my C function |
Previous Message | Magnus Hagander | 2010-04-16 10:52:27 | Re: [GENERAL] trouble with to_char('L') |