Re: dangling permission on tables after drop user. - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: dangling permission on tables after drop user.
Date
Msg-id 20040930140329.GC5151@dcc.uchile.cl
Whole thread Raw
In response to Re: dangling permission on tables after drop user.  (Vivek Khera <khera@kcilink.com>)
Responses Re: dangling permission on tables after drop user.  (Andrew Sullivan <ajs@crankycanuck.ca>)
List pgsql-general
On Thu, Sep 30, 2004 at 09:32:30AM -0400, Vivek Khera wrote:
>
> On Sep 29, 2004, at 5:35 PM, Alvaro Herrera wrote:
>
> >>>Am I missing something Vivek, or should the gross hack be "creating a
> >>>user with id=102" ?
> >>
> >>And how exactly does one accomplish this?  pg_users is a view so you
> >>can't insert into it.
> >
> >CREATE USER ... WITH SYSID 102;
>
> Ok. I did that.  So now how do I get rid of that user and all the
> grants?  DROP USER ends up with the dangling GRANTs still hanging
> about.
>
> Is there no way to drop a user and have the necessary grants disappear?
>  How does one drop a user cleanly?

I'm afraid you'll have to ALTER TABLE (or whatever) for each of these ...
I don't think there is a command that would help you do that
automatically.  You can cheat by looking at system catalogs for the
acl column (e.g. pg_class.relacl) and using that in a function.

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"El sentido de las cosas no viene de las cosas, sino de
las inteligencias que las aplican a sus problemas diarios
en busca del progreso." (Ernesto Hernández-Novich)


pgsql-general by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: 7.3.4 vacuum/analyze error
Next
From: Michael Fuhr
Date:
Subject: Re: How to get user's role?