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 1sz1e7-003lkK-Qi for pgsql-hackers@arkaria.postgresql.org; Thu, 10 Oct 2024 22:28:35 +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 1sz1e6-008j4X-3C for pgsql-hackers@arkaria.postgresql.org; Thu, 10 Oct 2024 22:28:34 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sz1e5-008j4P-Pr for pgsql-hackers@lists.postgresql.org; Thu, 10 Oct 2024 22:28:34 +0000 Received: from sss.pgh.pa.us ([68.162.161.243]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sz1e3-000Phf-0g for pgsql-hackers@postgresql.org; Thu, 10 Oct 2024 22:28:33 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 49AMSQAq2735115; Thu, 10 Oct 2024 18:28:26 -0400 From: Tom Lane To: Andrew Dunstan cc: Heikki Linnakangas , Nathan Bossart , pgsql-hackers@postgresql.org Subject: Re: sunsetting md5 password support In-reply-to: <76396e05-0724-4b17-9194-2875df40feb8@dunslane.net> References: <7e9e3d30-f7f4-460f-a626-6cfad419d6cd@iki.fi> <76396e05-0724-4b17-9194-2875df40feb8@dunslane.net> Comments: In-reply-to Andrew Dunstan message dated "Thu, 10 Oct 2024 08:40:18 -0400" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <2735113.1728599306.1@sss.pgh.pa.us> Date: Thu, 10 Oct 2024 18:28:26 -0400 Message-ID: <2735114.1728599306@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Andrew Dunstan writes: > Hmm, yeah. It would be easy enough to prevent MD5 passwords in things > like CREATE ROLE / ALTER ROLE, but harder to check for MD5 if there are > direct updates to pg_authid. Maybe we need to teach pg_dumpall a way to > do that as a workaround? That seems like a pretty awful idea. Having dump scripts that perform direct updates on pg_authid would lock us into supporting the current physical representation (ie that pg_authid is in fact a table with such-and-such columns) forever. Not to mention that no such script could be restored with anything less than full superuser privileges. And in return we're getting what exactly? On the whole I agree with Heikki's comment that we should just do it (disallow MD5, full stop) whenever we feel that enough time has passed. These intermediate states are mostly going to add headaches. Maybe we could do something with an intermediate release that just emits warnings, without any feature changes. regards, tom lane