Re: Define permissions at database level

From: Richard Huxton <dev(at)archonet(dot)com>
To: dipti shah <shahdipti1980(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Define permissions at database level
Date: 2010-02-18 10:59:43
Message-ID: 4B7D1D9F.9070301@archonet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-novice

On 18/02/10 10:54, dipti shah wrote:
> Okay then I think below works:
>
> 1. Revoke permission ALL permissions from PUBLIC on schema.
>
> REVOKE ALL ON ALL TABLES IN SCHEMA mySchema FROM PUBLIC;
>
> 2. Give store procedure for creating table with SECURITY DEFINER marked
> so that all tables owner will be "postgres" user.
> 3. Grant SELECT permission to required group on created table.
> 4. Give store procedure for droping the table with SECURITY DEFINER
> marked so that droping will happen in the context of "postgres" user.
>
> I think above will not allow anyone to create and/or drop tables directly
> without using store procedures.
>
> Please let me know if I am missing anything.

Sounds about right. Always test though.

--
Richard Huxton
Archonet Ltd

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message dipti shah 2010-02-18 11:09:06 Re: Define permissions at database level
Previous Message dipti shah 2010-02-18 10:54:40 Re: Define permissions at database level

Browse pgsql-novice by date

  From Date Subject
Next Message dipti shah 2010-02-18 11:09:06 Re: Define permissions at database level
Previous Message dipti shah 2010-02-18 10:54:40 Re: Define permissions at database level