run super
This commit is contained in:
33
config/postgres/script/setup_readonly_user.sql
Normal file
33
config/postgres/script/setup_readonly_user.sql
Normal file
@@ -0,0 +1,33 @@
|
||||
-- Dieses Skript enthält die Logik zur Erstellung eines dedizierten Read-Only-Benutzers
|
||||
-- und zur Anpassung des Hauptbenutzers.
|
||||
|
||||
-- Dieses Skript enthält die Logik zur Erstellung eines dedizierten Read-Only-Benutzers
|
||||
-- und zur Anpassung des Hauptbenutzers.
|
||||
|
||||
-- 1. Erstellen Sie einen neuen Benutzer mit einem sicheren Passwort.
|
||||
CREATE USER openvox_ro WITH PASSWORD 'Start1234';
|
||||
|
||||
-- 2. Entziehen Sie alle Standardberechtigungen für den neuen Benutzer.
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON TABLES FROM openvox_ro;
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON SEQUENCES FROM openvox_ro;
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON FUNCTIONS FROM openvox_ro;
|
||||
|
||||
-- 3. Erteilen Sie die erforderlichen Mindestberechtigungen.
|
||||
-- Erlauben Sie die Verbindung zur Datenbank.
|
||||
GRANT CONNECT ON DATABASE openvoxdb TO openvox_ro;
|
||||
|
||||
-- Erlauben Sie die Nutzung des 'public'-Schemas.
|
||||
GRANT USAGE ON SCHEMA public TO openvox_ro;
|
||||
|
||||
-- Erteilen Sie Lesezugriff (SELECT) auf alle vorhandenen Tabellen.
|
||||
GRANT SELECT ON ALL TABLES IN SCHEMA public TO openvox_ro;
|
||||
|
||||
-- 4. Stellen Sie sicher, dass der Benutzer auch Lesezugriff auf zukünftig erstellte Tabellen hat.
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO openvox_ro;
|
||||
|
||||
-- HINWEIS: Der Hauptbenutzer 'openvox' sollte idealerweise kein Superuser sein,
|
||||
-- nachdem die Initialisierung abgeschlossen ist. Der folgende Befehl würde dies tun,
|
||||
-- könnte aber zukünftige Schema-Migrationen verhindern oder mit Postgres 18+ zu Fehlern führen.
|
||||
-- ALTER USER openvox NOSUPERUSER;
|
||||
|
||||
COMMIT;
|
||||
Reference in New Issue
Block a user