Zum Hauptinhalt springen
Version: In Entwicklung
Zugriff & Administration

pgAdmin

Administrationsoberfläche für PostgreSQL-Datenbanken.

pgAdmin ist eine webbasierte Administrations- und Entwicklungsoberfläche für PostgreSQL. Sie unterstützt beim Registrieren von Datenbankservern, beim Untersuchen von Datenbanken und Schemas, bei SQL-Abfragen sowie bei administrativen Aufgaben. Die Oberfläche ersetzt dabei nicht das Rollenmodell der Datenbank: Jede Verbindung verwendet weiterhin einen konkreten PostgreSQL-Benutzer mit dessen Privilegien.

Wichtige Funktionen sind:

  • Serverregistrierung organisiert Verbindungen zu unterschiedlichen PostgreSQL-Instanzen.
  • Object Explorer macht Datenbanken, Schemas, Tabellen, Rollen und weitere Objekte sichtbar.
  • Query Tool führt SQL unter den Rechten der ausgewählten Datenbankverbindung aus.
  • Dashboards und Diagnoseansichten zeigen Sitzungen, Sperren und Datenbankaktivität.
  • Benutzer- und Rollenverwaltung bearbeitet PostgreSQL-Rollen, sofern der verwendete Datenbankzugang dazu berechtigt ist.

pgAdmin in der UDSP

pgAdmin stellt einen geschützten technischen Zugang zu den PostgreSQL-Datenbanken eines Mandanten bereit. Die Komponente wird im Datenmanagement-Namespace ausgerollt, erhält einen eigenen Keycloak-Client und verwendet OpenID Connect für die Anmeldung an der Weboberfläche. Ein erfolgreich angemeldeter Benutzer kann anschließend nur mit den separat hinterlegten Datenbankverbindungen arbeiten.

Die Oberfläche ist für Diagnose, Schemaeinsicht und klar freigegebene Administrationsaufgaben vorgesehen. Sie ist kein regulärer Zugang zu Datenprodukten und kein Ersatz für die APIs von Stellio, FROST, CKAN oder anderen Fachkomponenten. Direkte SQL-Änderungen umgehen deren Validierungen und müssen deshalb auf begründete Betriebsfälle beschränkt bleiben.

pgAdmin speichert eigene Oberflächenzustände und registrierte Serververbindungen auf einem Persistent Volume. Passwörter und privilegierte Datenbankzugänge müssen getrennt je Zielsystem verwaltet und auf den notwendigen Umfang begrenzt werden.

Technische Abhängigkeiten

pgAdmin trennt die Anmeldung an der Oberfläche von den technischen Verbindungen zu den administrierten Datenbanken.

Keycloak
Gemeinsamer Identitätsdienst · 26.6.3

Keycloak

Authentifiziert Benutzer per OpenID Connect und ermöglicht die Anlage ihres pgAdmin-Kontos.

Komponente öffnen
PostgreSQL
Administrierte Zielsysteme

PostgreSQL

Die jeweils registrierte PostgreSQL-Instanz und deren Credentials bestimmen den tatsächlichen Datenbankzugriff; es gibt keine einzelne Zielversion.

Komponente öffnen

Konfiguration und Deployment

Der Mandantenblock pgadmin aktiviert die Komponente und legt das initiale Administrationskonto sowie den Schalter für erweiterten Cookie-Schutz fest. Beim Rollout erzeugt die Automatisierung den Keycloak-Client pgadmin, übernimmt dessen Client-Secret in die Anwendungskonfiguration und aktiviert die automatische Anlage angemeldeter OIDC-Benutzer.

Die Inventory-Felder und das Ansible-Tag sind unter Mandanten konfigurieren: pgAdmin beschrieben.

Rollen und Rechte

Der aktuelle UDSP-Rollout erzeugt für den Keycloak-Client pgadmin keine eigenen Client-Rollen. Anmeldung, Oberflächenkonto und Datenbankberechtigung sind daher drei getrennte Ebenen:

Anmeldung

Keycloak-Identität

OpenID Connect bestätigt die Identität und legt beim ersten erfolgreichen Login ein pgAdmin-Benutzerkonto an.

Oberflächenbetrieb

pgAdmin-Konto

Das lokale Konto speichert Einstellungen und Serverregistrierungen; es gewährt allein noch keinen Datenbankzugriff.

Datenzugriff

PostgreSQL-Rolle

Die Credentials der ausgewählten Verbindung bestimmen Datenbanken, Schemas und erlaubte SQL-Operationen.

Das initiale Konto aus env_email und env_password ist ein administrativer Bootstrap-Zugang der pgAdmin-Installation. Es ist kein PostgreSQL-Superuser und keine Keycloak-Rolle. Für den produktiven Betrieb müssen Oberflächenzugang und Datenbankprivilegien unabhängig voneinander geprüft werden.

Referenzen