]> 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:46:31 +0000 (00:46 +0900)
commit97f6fc10fff0e42d08d78ce7f2a5b116e7f8d9b2
treeea2c579e7f02157e0862b3295db6101b4d71e236
parent377cc45194f4f1bd6eb68bd6eb42402e46e326d7
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