Re: pgsql: Revoke PUBLIC CREATE from public schema, now owned by pg_databas

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Noah Misch <noah(at)leadboat(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pgsql: Revoke PUBLIC CREATE from public schema, now owned by pg_databas
Date: 2022-12-01 11:16:39
Message-ID: 20221201111639.t6cabzqlmcl4yjtl@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

On 2022-Dec-01, Noah Misch wrote:

> This is free from the problem found in ddl-create-public-reorg-really.patch.
> However, the word "other" doesn't belong there. (The per-user schemas should
> not have public CREATE privilege.) I would also move that same sentence up
> front, like this:
>
> Constrain ordinary users to user-private schemas. To implement this
> pattern, first ensure that no schemas have public CREATE privileges.
> Then, for every user needing to create non-temporary objects, create a
> schema with the same name as that user. (Recall that the default search
> path starts with $user, which resolves to the user name. Therefore, if
> each user has a separate schema, they access their own schemas by
> default.) This pattern is a secure schema usage pattern unless an
> untrusted user is the database owner or holds the CREATEROLE privilege, in
> which case no secure schema usage pattern exists.

+1 LGTM

--
Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2022-12-01 11:56:51 pgsql: Move PartitioPruneInfo out of plan nodes into PlannedStmt
Previous Message Peter Eisentraut 2022-12-01 10:53:25 pgsql: doc: Add missing comma

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2022-12-01 11:21:06 Re: generic plans and "initial" pruning
Previous Message Alvaro Herrera 2022-12-01 10:49:54 Re: ExecRTCheckPerms() and many prunable partitions