Re: RESET ROLE and search_path, Connection pool

From: "Marc Mamin" <M(dot)Mamin(at)intershop(dot)de>
To: "Derrick Rice" <derrick(dot)rice(at)gmail(dot)com>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: RESET ROLE and search_path, Connection pool
Date: 2010-12-06 07:14:49
Message-ID: C4DAC901169B624F933534A26ED7DF31034BB96C@JENMAIL01.ad.intershop.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello,

> Obviously each "user" could use RESET ROLE and become the super user. 

Yes, this is a point not to forget, but isn't an issue in our case.

best regards,

Marc Mamin

From: Derrick Rice [mailto:derrick(dot)rice(at)gmail(dot)com]
Sent: Samstag, 4. Dezember 2010 00:21
To: Marc Mamin
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] RESET ROLE and search_path, Connection pool

On Fri, Dec 3, 2010 at 5:13 AM, Marc Mamin <M(dot)Mamin(at)intershop(dot)de> wrote:
Hello,

We are thinking about using a (java based) connection pool.
An issue is that there are many different users to connect.
My idea is to only have superuser connections in the pool
and change the connection role (with SET ROLE) each time
a user pick a connection there.

Tangential to your question, but important:
Obviously each "user" could use RESET ROLE and become the super user.  This means that every piece of code that uses this pool needs to have security appropriate for code using the super user.  i.e. "Whatever, it's just using a read-only role, nothing bad can happen" is no longer a valid argument (if it ever was).

Do you have that much faith / trust in every "user"?

* "user" in quotes because I'm guessing you are referring to different portions of your application / application suite and hopefully not individual persons.

Derrick

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Florian Weimer 2010-12-06 08:27:29 Re: encode(bytea_value, 'escape') in PostgreSQL 9.0
Previous Message Allan Kamau 2010-12-06 06:18:56 Re: PostgreSQL 9.0 RPMs for RHEL 6 and Fedora 14 released