Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tYKPj-009GWv-ED for pgsql-hackers@arkaria.postgresql.org; Thu, 16 Jan 2025 07:35:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tYKPh-007fvD-He for pgsql-hackers@arkaria.postgresql.org; Thu, 16 Jan 2025 07:35:38 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tYKPh-007ftG-5T for pgsql-hackers@lists.postgresql.org; Thu, 16 Jan 2025 07:35:37 +0000 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tYKPg-000fcZ-0Y for pgsql-hackers@lists.postgresql.org; Thu, 16 Jan 2025 07:35:36 +0000 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-385e27c75f4so459806f8f.2 for ; Wed, 15 Jan 2025 23:35:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737012934; x=1737617734; darn=lists.postgresql.org; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:subject:cc:to:from:date :sender:message-id:from:to:cc:subject:date:message-id:reply-to; bh=uIGL18kOp+v0yfLEFXenZtNyulG2bH7KCtaIrwMVkek=; b=UH+kib6MP0BPZC7qPpN3auXYstjR2Jpdq2p7J+BnnbXwAGsCmXQUMmpfmZNUl/cFvA 0Jz3VSsWyCiH4qs8fE4c/1OywEFkWKiS9PZC60jyQhxbb74albFhZxfULojML8sS+sCj TLwGZW+na6NVZKufMmA7DCjwStaq25J/TR1KUh4Q1D4X0Sx2txNsbo9klkYq/viAc3Tf Zt72O0gXOXW38rUE67U/fBBmSGoaE6tiOTPRrIOnNR4ZCOlRFYLIButeqhne9/XYhyOc koreIHQdHkqTch7749Xq7PyY1dGMY7rlCSS+gTrBX2D/CdkPNydlwFObfapSsH3DSB9L ilKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737012934; x=1737617734; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:subject:cc:to:from:date :sender:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=uIGL18kOp+v0yfLEFXenZtNyulG2bH7KCtaIrwMVkek=; b=owb9ULDkrW8oLnuiE6cY+xaek90do86ctvNfevqaamgVja5PNfbZV2mtIZnynW+1vM dfgCDAOh2SVl8g82zv2BMndjsJ7CfVOyKjcJRdxlJR0MiVdL2V89YkgnOIeQxniRRMs/ GZeQmhRozCkjG+jZWLtfgFmlvhqMukafxZb9bJeD6WcaTWB7s0wZCDHk41TgKbLLm/dl j6LzI7pv/VQEcaIpXIc+RIMhv5oVvIO+VTKQkDK02fDrX4EC1562ua4pbept8BjO1uhn fytFYTvL13KwENW2Xa+IUVowYxYgYC4f9P9zVhnwW9ROIAeWkJuu5AQr06dlTSu4N2xu eKMg== X-Forwarded-Encrypted: i=1; AJvYcCVVGjzpSgi96aMyTdFr/AgdIxcREigWwHQg2MUWCxIyxt8//5eR7vSGlUB5/Xd80cxmqDg0U0JGZ4sXPyLR@lists.postgresql.org X-Gm-Message-State: AOJu0YwXCvHCeRA5dFhpPgB+tXk0ihJfsh6bkVsJZJqA34tPEoYtncL6 Q4dla95HF0Z9mpe1vReGqD/dfei0mRTqYRuWPzhre22wSN27sNaT X-Gm-Gg: ASbGncuW2cfWCJWtCI0kLCveVv8J6xX9144HyEc2pJOEryWQ60o/bGLOMSM9VxOYupn Hjdy+SWQ/K6x/3cQ3BO6r1EnTelQ/h3NEm6V5HQps7wWum4lieyVm40X0h5JflJH9l0bLPnekkU ainYjGQc0IEk7uk3Co7UBttNM6Cm51ZQW91oHoM+f1rwnG5RLLlcs2cU4kPy32eWVrW+hnbXdea 4QTHqVL6ywKhK6rBfI+TN27JUuc8Wd/Q7UE6j1poTYTV4fxgP5Pq7oQVzMUnIbqbPw52LzkZMFJ YTrDb1EsUYcSNx4= X-Google-Smtp-Source: AGHT+IGnRwQikXnDpuyJxBxykj7pVIhLusIThBD3gbKLHWYlUoijBxwc1Q2oGQ9ND135qCqe+FqmFg== X-Received: by 2002:a5d:6da4:0:b0:386:3356:f3ac with SMTP id ffacd0b85a97d-38a8730cf2cmr28382458f8f.26.1737012933938; Wed, 15 Jan 2025 23:35:33 -0800 (PST) Received: from lightning.caipicrew.dd-dns.de ([2001:a61:ab5:ca01:1234:5fa8:87f4:771e]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38a8e4b7f79sm20030093f8f.69.2025.01.15.23.35.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Jan 2025 23:35:33 -0800 (PST) Message-ID: <6788b6c5.df0a0220.12545e.47be@mx.google.com> X-Google-Original-Message-ID: <20250116073532.GD16813@caipicrew.dd-dns.de;lightning.caipicrew.dd-dns.de> Sender: Michael Banck Received: from mbanck by lightning.caipicrew.dd-dns.de with local (Exim 4.92) (envelope-from ) id 1tYKPc-0007Ve-S5; Thu, 16 Jan 2025 08:35:32 +0100 Date: Thu, 16 Jan 2025 08:35:32 +0100 From: Michael Banck To: Shinya Kato Cc: Kirill Reshke , Jelte Fennema-Nio , PostgreSQL Hackers Subject: Re: [PATCH] New predefined role pg_manage_extensions References: <65a1524e.050a0220.49266.7670@mx.google.com> <65a247d9.050a0220.ecb2e.1177@mx.google.com> <6723fae4.a70a0220.28a8f2.27e4@mx.google.com> <6773d26a.050a0220.326c12.b02a@mx.google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi, On Thu, Jan 16, 2025 at 04:09:44PM +0900, Shinya Kato wrote: > On Thu, Jan 16, 2025 at 3:31 PM Michael Banck wrote: > > I do think having a whitelist of allowed-to-be-installed extensions > > (similar/like https://github.com/dimitri/pgextwlist) makes sense > > additionally in today's container/cloud word where the local Postgres > > admin might not have control over which packages get installed but wants > > to have control over which extension the application admins (or whoever) > > may create, but that is another topic I think. > > To use a certain extension, you may need to install the > postgresql-contrib package. In that case, is there a way to restrict > extensions other than the required one? Or is it unnecessary to impose > such restrictions? I was thinking about the following (increasinly common, I think) use-case: we have a largish organisation where the platform/whatever team wants to deploy Postgres in a uniform way and install the common set of all contrib and external extensions that might be needed for each instance. But then you have instance-specific admins that might want to restrict the set of extensions their instance (or their developers/app admins/whatever) is allowed to use. However, this is not the purpose of the patch in discussion, just a side-remark that this functionality would be good to have in addition. Michael