summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorNoah Misch2025-05-01 23:51:59 +0000
committerNoah Misch2025-05-01 23:52:02 +0000
commit40d1a1016d75daee39219fcda9eec2e38d1028e8 (patch)
treebe5c8481d8849b0b69c60d00bae7acf7c7f6f504 /doc
parent18dc43a07fecc22934742fd752dcdd3a10f9d6cd (diff)
Doc: stop implying recommendation of insecure search_path value.
SQL "SET search_path = 'pg_catalog, pg_temp'" is silently equivalent to "SET search_path = pg_temp, pg_catalog, "pg_catalog, pg_temp"" instead of the intended "SET search_path = pg_catalog, pg_temp". (The intent was a two-element search path. With the single quotes, it instead specifies one element with a comma and a space in the middle of the element.) In addition to the SET statement, this affects SET clauses of CREATE FUNCTION, ALTER ROLE, and ALTER DATABASE. It does not affect the set_config() SQL function. Though the documentation did not show an insecure command, remove single quotes that could entice a reader to write an insecure command. Back-patch to v13 (all supported versions). Reported-by: Sven Klemm <[email protected]> Author: Sven Klemm <[email protected]> Backpatch-through: 13
Diffstat (limited to 'doc')
-rw-r--r--doc/src/sgml/extend.sgml4
1 files changed, 2 insertions, 2 deletions
diff --git a/doc/src/sgml/extend.sgml b/doc/src/sgml/extend.sgml
index 218940ee5ce..4b7094f2739 100644
--- a/doc/src/sgml/extend.sgml
+++ b/doc/src/sgml/extend.sgml
@@ -1339,8 +1339,8 @@ SELECT * FROM pg_extension_update_paths('<replaceable>extension_name</replaceabl
secure <varname>search_path</varname>; do <emphasis>not</emphasis>
trust the path provided by <command>CREATE/ALTER EXTENSION</command>
to be secure. Best practice is to temporarily
- set <varname>search_path</varname> to <literal>'pg_catalog,
- pg_temp'</literal> and insert references to the extension's
+ set <varname>search_path</varname> to <literal>pg_catalog,
+ pg_temp</literal> and insert references to the extension's
installation schema explicitly where needed. (This practice might
also be helpful for creating views.) Examples can be found in
the <filename>contrib</filename> modules in