]> git.ipfire.org Git - thirdparty/postgresql.git/commit
postgres_fdw: Give user mapping precedence for use_scram_passthrough
authorFujii Masao <fujii@postgresql.org>
Mon, 25 May 2026 15:46:31 +0000 (00:46 +0900)
committerFujii Masao <fujii@postgresql.org>
Mon, 25 May 2026 15:47:43 +0000 (00:47 +0900)
commit88d7748d2ab7017c29c0f7bec04612b2680552d0
treecd78fd2145ad828f6ddf3ffcbc1fb41bcf2b6250
parentb5fd5723a6594f0d74cc05ce5971190b71efdd20
postgres_fdw: Give user mapping precedence for use_scram_passthrough

Previously, when use_scram_passthrough was specified on both a foreign server
and a user mapping, the server-level setting took precedence over the
user-mapping setting. This was inconsistent with the usual semantics of
postgres_fdw options, where foreign server options provide shared defaults
and user mapping options override them on a per-user basis.

This commit updates postgres_fdw so that the user-mapping setting takes
precedence when use_scram_passthrough is specified in both places. This
matches the behavior of other connection options such as sslcert and sslkey.

Backpatch to v18, where use_scram_passthrough was introduced. In v18,
this only affects limited configurations that specify conflicting values
at both the foreign server and user-mapping levels. In such cases, users
would naturally expect the user-mapping setting to override the server-level
setting, so changing the behavior should be minimally disruptive.
Also keeping v18 as the only branch with different semantics for
use_scram_passthrough would be unnecessarily confusing, so backpatch
this fix to v18.

Author: Matheus Alcantara <matheusssilv97@gmail.com>
Reviewed-by: Fujii Masao <masao.fujii@gmail.com>
Discussion: https://postgr.es/m/CAHGQGwEJ8rZjmbOvCicyr4vbuLio082bNTde0WNoSWaWr9wVcg@mail.gmail.com
Backpatch-through: 18
contrib/postgres_fdw/connection.c
contrib/postgres_fdw/t/001_auth_scram.pl
doc/src/sgml/postgres-fdw.sgml