Zaczynam zabawę z postgresem dla kilku użytkowników i mam problem, że chce skonfigurować połączenie użytkowników z bazą tak, żeby otwieranie projektów nie wymagało wpisywania loginu oraz hasła.
Czy domyślny login to jest nazwa użytkownika w systemie?
Jeśli macie kwestie, które są bardzo ważne na takim wstępnym etapie będę wdzięczny
w celu zarządzania uprawnieniami dostępu do danych w PostgreSQL powinieneś utworzyć każdemu użytkownikowi rolę w bazie, która będzie umożliwiała logowanie (musi mieć opcję LOGIN)
uprawnienia do dostępu do danych należy nadawać tym rolom, a najlepiej dodać takie zbiorcze role (bez możliwości logowania do nich - czyli bez opcji LOGIN) , z których uprawnienia będą dziedziczyć rolę użytkowników. Będą one stanowiły swego rodzaju grupy, pod które podlegać będą standardowi użytkownicy. Łatwiej wtedy zabierać i dawać uprawnienia całym grupom użytkowników.
dobrze jest każdą z tych grup nazywać tak, żeby jasne było jakim uprawnieniom odpowiada (np. egib_usage dla dla uprawnień USAGE w schemacie egib, egib_dzialki_select do SELECT-ów na schemacie egib, tabela dzialki.
w samym QGIS w parametrach połączenia z PostgreSQL użytkownik wpisuję swoje dane i może je zapisać, najlepiej w QGIS-owym menadżerze haseł jako szyfrowana konfiguracja. Wtedy loginy do PostgreSQL nie będą przechowywane jako plaintext w plikach projektów QGIS
samo nadanie dostępów do plików projektów w PostgreSQL będzie chyba wymagało nadania uprawnień dla konkretnych wierszy w tabeli z projektami, więc musiałbyś poczytać o RLS (row level security) w PostgreSQL
Nie wiem, czy o to Ci chodziło, więc jeśli coś jest niejasne, albo masz inne pytania to pisz
Żeby użytkownik mógł podłączyć się do bazy należy poprawnie skonfigurować postgresql.conf tak żeby listen_addresses = ‘*’ , co sprawi, że baza będzie słuchała na wszystkich adresach. Dodatkowo pg.hba.conf musisz ustawić dostęp użytkownikom (możesz tam ustawić do których baz użytkownik może się logować, z jakich adresów IP oraz jak jest metoda autoryzacji).