From 5d45650d6cc2df5ab8b0c90d5d5b061a34b29acf Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Wed, 19 Jun 2024 17:15:02 +0200 Subject: [PATCH] Create a test unprivileged user for PostgreSQL tests --- tests/testdata/provider/testdata_pg.sh | 14 +++++++------- tests/testdata/provider/testdata_pg_role.sql | 7 ++++++- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/tests/testdata/provider/testdata_pg.sh b/tests/testdata/provider/testdata_pg.sh index 4e15365c137..3b31e15b6a0 100755 --- a/tests/testdata/provider/testdata_pg.sh +++ b/tests/testdata/provider/testdata_pg.sh @@ -57,11 +57,11 @@ EOF # Test service=qgis_test connects to the just-created database echo "Checking if we can connect to ${DB} via service=qgis_test" -CHECK=$(psql -XtA 'service=qgis_test' -c "select val from qgis_test.schema_info where var='fingerprint'") +CHECK=$(psql -wXtA 'service=qgis_test' -c "select val from qgis_test.schema_info where var='fingerprint'") if test "${CHECK}" != "${FINGERPRINT}"; then exec >&2 echo "ERROR: Could not access the just created test database ${DB} via service=qgis_test" - echo "HINT: create a section like the following in ~/.pg_service.conf" + echo "HINT: setup a section like the following in ~/.pg_service.conf" cat <&2 echo "ERROR: Could not access the just created test database ${DB} via service=qgis_test and overriding username/password" - echo "HINT: make sure MD5 method is accepted in pg_hba.conf " - echo "(specifying host=localhost in the [qgis_test] section of " - echo "'~/.pg_service.conf' often does help)" + echo "HINT: make sure password based methods ( scram-sha-256, md4 ) are accepted in pg_hba.conf" + echo " for the kind of connection used by the [qgis_test] section of ~/.pg_service.conf" + echo " Specifying host=localhost often helps." exit 1 fi diff --git a/tests/testdata/provider/testdata_pg_role.sql b/tests/testdata/provider/testdata_pg_role.sql index 5e25d93df57..7532d981eb5 100644 --- a/tests/testdata/provider/testdata_pg_role.sql +++ b/tests/testdata/provider/testdata_pg_role.sql @@ -1,5 +1,10 @@ DROP GROUP IF EXISTS qgis_test_group; +CREATE USER qgis_test_group NOLOGIN; + DROP USER IF EXISTS qgis_test_user; CREATE USER qgis_test_user PASSWORD 'qgis_test_user_password' LOGIN; -CREATE USER qgis_test_group NOLOGIN; ALTER GROUP qgis_test_group ADD USER qgis_test_user; + +DROP USER IF EXISTS qgis_test_unprivileged_user; +CREATE USER qgis_test_unprivileged_user WITH PASSWORD +'qgis_test_unprivileged_user_password' LOGIN;