Re: Read-only connection mode for AI workflows. - Mailing list pgsql-hackers

From Isaac Morland
Subject Re: Read-only connection mode for AI workflows.
Date
Msg-id CAMsGm5fuHSvjCYuR3qyFWkbQGMjT2AS7ZJ8rrU+MjT7YzO2e_A@mail.gmail.com
Whole thread Raw
In response to Re: Read-only connection mode for AI workflows.  (Jelte Fennema-Nio <postgres@jeltef.nl>)
List pgsql-hackers
On Mon, 23 Mar 2026 at 05:10, Jelte Fennema-Nio <postgres@jeltef.nl> wrote:
On Fri, 20 Mar 2026 at 13:33, Greg Sabino Mullane <htamfids@gmail.com> wrote:
> I'm a +1 to the cluster-wide change, and a -1 to the per-connection idea that started this thread, because I still don't see the need for it when we have an existing roles/permissions system that gets the job done. You want your untrusted agent to read from your database? Create a specific role for that. If our existing per-role access controls are not sufficient, improve them.

I think they are insufficient for two reasons:
1. Afaik there's no simple way to take an existing role and create a
new role from it that only has the read permissions of the original
role. Especially if you want those permissions to stay in sync between
the roles.

I don't think it's possible even in principle. As soon as the supposedly read-only role calls a security definer function, the session is no longer operating with the permissions of the supposedly read-only role.

I think what is wanted is, in effect, very close to the ability to pretend that one is connected to a replica rather than the primary, What is requested already exists in a sense through the use of replication, but only at the entire instance level, not one session. In other words, what you suggest below, although it might be interesting to think about whether there are any other settings that would be useful to lock down in this fashion:

I think the best way to address this thread is to have a way to "lock"
settings down, like discussed in this thread[1]. Then a user could
simply run the sql to lock down the transaction_read_only and get a
read-only connection that it could give to the LLM.

pgsql-hackers by date:

Previous
From: Ashutosh Sharma
Date:
Subject: Re: synchronized_standby_slots behavior inconsistent with quorum-based synchronous replication
Next
From: Ranier Vilela
Date:
Subject: Re: Avoid multiple calls to memcpy (src/backend/access/index/genam.c)