T2Med Linux Server

Lesenden PostgreSQL-Nutzer t2_readonly für T2med auf Linux-Servern anlegen.

Read-Only PostgreSQL User für T2med einrichten (Linux Server)

Hintergrund

Auf Linux-Servern kann der Standard-T2med-Server-Nutzen für externe Datenbankzugriffe nicht verwendet werden. Daher muss für den Zugriff auf die PostgreSQL-Datenbank zwingend ein separater, lesender Datenbanknutzer angelegt werden.

Dieser Guide richtet den User t2_readonly mit Leserechten auf alle Tabellen im aps-Schema der T2med-Datenbank ein.


Verbindung zur Datenbank herstellen

psql -h localhost -p 16569 -U postgres -d t2med

Alternativ über pgAdmin oder ein anderes PostgreSQL-Tool.


Schritt 1: User anlegen

CREATE USER t2_readonly WITH PASSWORD 'SICHERES_PASSWORT_HIER';

Schritt 2: Verbindungsrecht auf die Datenbank

GRANT CONNECT ON DATABASE t2med TO t2_readonly;

Schritt 3: Schema-Nutzungsrecht

GRANT USAGE ON SCHEMA aps TO t2_readonly;

Schritt 4: Leserechte auf alle bestehenden Tabellen

GRANT SELECT ON ALL TABLES IN SCHEMA aps TO t2_readonly;

Schritt 5: Leserechte auf alle bestehenden Sequences und Views

GRANT SELECT ON ALL SEQUENCES IN SCHEMA aps TO t2_readonly;

Schritt 6: Default-Rechte für zukünftige Tabellen

Damit nach T2med-Updates neu angelegte Tabellen automatisch lesbar sind:

ALTER DEFAULT PRIVILEGES IN SCHEMA aps
    GRANT SELECT ON TABLES TO t2_readonly;

ALTER DEFAULT PRIVILEGES IN SCHEMA aps
    GRANT SELECT ON SEQUENCES TO t2_readonly;
Warnung

ALTER DEFAULT PRIVILEGES gilt nur für Objekte, die vom aktuell eingeloggten User erstellt werden. Wenn T2med Tabellen unter einem anderen Owner anlegt, muss dieser Befehl als jener Owner ausgeführt werden -- oder nach jedem T2med-Update müssen Schritt 4 und 5 wiederholt werden.


Schritt 7: Verbindung testen

psql -h localhost -p 16569 -U t2_readonly -d t2med

Zusammenfassung (Copy & Paste)

Alle Befehle am Stück, als postgres-User ausführen:

# Verbindung herstellen
psql -h localhost -p 16569 -U postgres -d t2med
-- Als postgres-Superuser ausführen:
CREATE USER t2_readonly WITH PASSWORD 'SICHERES_PASSWORT_HIER';
GRANT CONNECT ON DATABASE t2med TO t2_readonly;
GRANT USAGE ON SCHEMA aps TO t2_readonly;
GRANT SELECT ON ALL TABLES IN SCHEMA aps TO t2_readonly;
GRANT SELECT ON ALL SEQUENCES IN SCHEMA aps TO t2_readonly;
ALTER DEFAULT PRIVILEGES IN SCHEMA aps GRANT SELECT ON TABLES TO t2_readonly;
ALTER DEFAULT PRIVILEGES IN SCHEMA aps GRANT SELECT ON SEQUENCES TO t2_readonly;

Zuletzt aktualisiert am

Noch Fragen?

Unser Support hilft Ihnen gern weiter, telefonisch unter 0341 / 98 98 40 38 oder per E-Mail.

Support kontaktieren