Unterabschnitte


Das phpPgAdmin-Paket

Die Einleitung

„phpPgAdmin“ stellt eine WebOberfläche für PostgreSQL auf Basis PHP bereit, es lassen sich PostgreSQL Datenbanken anlegen, bearbeiten und verwalten.

Erforderlich ist dafür das eisfair Paket Apache2.

Die WebOberfläche unterstützt mehrere Sprachen..

PostgreSQL verfügt über eine eigene Benutzerverwaltung.

Der Webzugriff

Das eisfair phpPgAdmin Paket lässt sich auf verschiedene Arten zur Benutzung konfigurieren.

Der Zugriff kann über eine Subdomain

http{s}://phpPgAdmin.meine.de

oder in eine bestehende Domain

http{s}://www.meine.de/phpPgAdmin

erfolgen. Es ist auch beides gleichzeitig möglich, also über die Subdomain und in der bestehenden Domain.

Der https Zugriff für die Subdomain wird über die eisfair phpPgAdmin Konfiguration eingestellt, für den https Zugriff in der bestehenden Domain muss das SSL Zertifikat von der Domain bereitgestellt werden.

Die Konfiguration der Datenbank

Um phpPgAdmin nutzen zu können, muss ein Zugang zur Datenbank in der Datei pg_hba.conf konfiguriert werden. Dabei gibt es verschiedene Varianten, je nachdem, ob der Webserver und die Datenbank auf demselben Host laufen oder nicht.

Zusätzlich muss der Datenbankbenutzer bereits vorhanden sein, er wird mit CREATE ROLE erstellt.

Beispiele:

Webserver und Datenbank laufen auf demselben Host:

POSTGRESQL_HOST_1_TYPE = local
POSTGRESQL_HOST_1_NETWORK =
POSTGRESQL_HOST_1_USERAUTH = md5
POSTGRESQL_HOST_1_DATABASE = all
POSTGRESQL_HOST_1_USER = all
POSTGRESQL_HOST_2_TYPE = host
POSTGRESQL_HOST_2_NETWORK = 127.0.0.1/32
POSTGRESQL_HOST_2_USERAUTH = md5
POSTGRESQL_HOST_2_DATABASE = all
POSTGRESQL_HOST_2_USER = all

Die beiden Einträge erlauben den Zugang durch phpPgAdmin, sowohl über das Unix-Domain-Socket als auch über das lokale Netzwerk.

Webserver und Datenbank laufen auf unterschiedlichen Hosts:

Läuft die Datenbank auf einem anderen Server als der Webserver, auf dem phpPgAdmin läuft, ist eine Konfiguration wie in dem folgenden Beispiel notwendig, hier veranschaulicht anhand eines Datenbankservers mit der Adresse 192.169.200.5 und eines Webservers unter 192.169.200.30 auf dem phpPgAdmin läuft.

POSTGRESQL_HOST_3_TYPE = host
POSTGRESQL_HOST_3_NETWORK = 192.168.200.30/32
POSTGRESQL_HOST_3_USERAUTH = md5
POSTGRESQL_HOST_3_DATABASE = all
POSTGRESQL_HOST_3_USER = all

„phpPgAdmin“ ist als Modul im Apache2 Menü zu finden.

Das Menü im Setup-Programm

Das Menü im Setup-Programm ist wie folgt aufgebaut:

  x. Service administration
  x. Apache2 Webserver  
  x. Configuration  
  x. Modules configuration  
  x. phpPgAdmin administration  
  1. View documentation  
  2. Edit configuration  
  3. Create/Remove report database  
  4. Advanced configuration file handling  
  5. Logfile view (hat nur Inhalt bei Subdomain)  
  6. User handling for web access (Optional)  
  0. Exit  

Die Änderung der Konfiguration

Die Konfiguration kann über den Menüpunkt „Edit configuration“ geändert werden.

Ich empfehle zum Bearbeiten der Konfiguration den Editor „ece“.

Die Konfigurationsdatei

In der Konfigurationsdatei, die über das Menü zugänglich ist, sind folgende Parameter vorhanden; wer sie von Hand editieren will, findet sie unter
/etc/config.d/phppgadmin.

Allgemeine Einstellungen

START_PHPPGADMIN

Für die Aktivierung des phpPgAdmin muss diese Variable lediglich auf den Wert „yes“ gestellt werden. Die Einstellung „no“ schaltet phpPgAdmin ab.

Gültige Werte: yes, no

Standardeinstellung: START_PHPPGADMIN='no'

Einstellungen für eine Subdomain

PHPPGADMIN_SUBDOMAIN

Hier wird angegeben, ob phpPgAdmin in einer Subdomain ausgeführt werden soll. (phppgadmin.meine.de)

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SUBDOMAIN='no'

PHPPGADMIN_SUBDOMAIN_NAME

Hier wird der Komplette Name der Domain eingegeben

Beispiel: ⇒ {http{s}://}phppgadmin.meine.de

Gültige Werte: Qualifizierter Domain Name

Standardeinstellung: PHPPGADMIN_SUBDOMAIN_NAME=''

PHPPGADMIN_SUBDOMAIN_PORT

Hier wird der Port für die HTTP Verbindung eingegeben.

Gültige Werte: Port

Standardeinstellung: PHPPGADMIN_SUBDOMAIN_PORT='80'

PHPPGADMIN_SUBDOMAIN_ADMIN

Hier wir die Mail Adresse des Server Admin angegeben

Gültige Werte: Mail Adresse

Standardeinstellung: PHPPGADMIN_SUBDOMAIN_ADMIN=''

PHPPGADMIN_SUBDOMAIN_FORCE_SSL

Soll der Zugriff immer mit https erfolgen.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SUBDOMAIN_FORCE_SSL='no'

PHPPGADMIN_SUBDOMAIN_SSL_PORT

Hier wird der Port für die HTTPS Verbindung eingegeben.

Gültige Werte: Port

Standardeinstellung: PHPPGADMIN_SUBDOMAIN_SSL_PORT='443'

PHPPGADMIN_SUBDOMAIN_SSL_CERT

Hier wird das Server Zertifikat für die SSL Verbindung angegeben.

Gültige Werte: Zertifikat

Standardeinstellung: PHPPGADMIN_SUBDOMAIN_SSL_CERT=''

Einstellungen für einen Host

PHPPGADMIN_HOST

Hier wird angegeben, ob phpPgAdmin in einem Host ausgeführt werden soll.
(www.meine.de/phppgadmin)

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_HOST='yes'

PHPPGADMIN_HOST_NAME

Hier wird der Host(Servername) angegeben, in dem phpPgAdmin ausgeführt werden soll. Im Normalfall ist dies der APACHE2_SERVER_NAME.

Gültige Werte: Servername

Standardeinstellung: PHPPGADMIN_HOST_NAME='APACHE2_SERVER_NAME'

PHPPGADMIN_HOST_ALIAS

Hier wird der Alias angegeben, über den phpPgAdmin angesprochen werden soll.

Beispiel: ⇒ {http{s}://}www.meine.de/phppgadmin

Gültige Werte: jeder gültige Name

Standardeinstellung: PHPPGADMIN_HOST_ALIAS='phppgadmin'

PHPPGADMIN_HOST_FORCE_SSL

Soll der Zugriff immer mit https erfolgen.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_HOST_FORCE_SSL='no'

Einstellungen für die Anmeldung

PHPPGADMIN_ACCESS_CONTROL

Mit diesem Paramter wird zusätzlich die Benutzerkontrolle über Apache htaccess eingeschaltet.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_ACCES_CONTROL='no'

PHPPGADMIN_ACCESS_ALL

Hier ist der Zugriff für alle erlaubt, Weltweit.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_ACCESS_ALL='no'

PHPPGADMIN_ACCESS_AUTH

Hier ist der Zugriff mit Benutzername und Passwort erlaubt. Benutzer müssen dafür über den Menüpunkt „User handling for web access“ in der phpPgAdmin administration ein Passwort erhalten.
Dieser Menüpunkt ist nur sichtbar, bei PHPPGADMIN_ACCESS_AUTH='yes'

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_ACCESS_AUTH='no'

PHPPGADMIN_ACCESS_AUTH_SEND_MAIL_FROM

Bei der Einstellung PHPPGADMIN_ACCESS_AUTH muss hier eine Mail Adresse angeben werden, die als Absender benutzt werden soll. Bleibt sie leer wird keine Mail versandt

Gültige Werte: leer, Mail Adresse

Standardeinstellung: PHPPGADMIN_ACCESS_AUTH_SEND_MAIL_FROM=''

PHPPGADMIN_ACCESS_HOST

Hier ist der Zugriff mit Hostname erlaubt. Es dürfen mehrere durch ein Leerzeichen getrennt angegeben werden.

Gültige Werte: Hostname, Domain

Standardeinstellung: PHPPGADMIN_ACCESS_HOST=''

PHPPGADMIN_ACCESS_IP

Hier ist der Zugriff von der IP Adresse erlaubt. Es dürfen mehrere durch ein Leerzeichen getrennt angegeben werden.

Beispiel: 10 192.168.6 192.168.6.1 192.168.6.0/24

Gültige Werte: IP Adresse

Standardeinstellung: PHPPGADMIN_ACCESS_IP=''

PHPPGADMIN_ACCESS_LOCAL

Hier ist der Zugriff local erlaubt.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_ACCESS_LOCAL='no'

Die Einstellungen für den Server

PHPPGADMIN_SERVER_N

Hier wird die Anzahl der per phpPgAdmin zu bedienenden PostgreSQL-Server eingestellt.

Gültige Werte: Zahl

Standardeinstellung: PHPPGADMIN_SERVER_N='1'

PHPPGADMIN_SERVER_x_NAME

Hier kann ein Name oder eine Bezeichnung für diesen Server eingegeben werden. Unter diesem Namen wird der Server in phpPgAdmin aufgelistet.

Gültige Werte: keine Einschränkung

Standardeinstellung: PHPPGADMIN_SERVER_x_NAME=''

PHPPGADMIN_SERVER_x_ACTIVE

Hier kann ein Server deaktiviert werden. Dabei bleiben die Einstellungen für eine eventuelle Reaktivierung erhalten, werden aber nicht in die phpPgAdmin-Konfiguration geschrieben.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SERVER_x_ACTIVE='no'

PHPPGADMIN_SERVER_x_HOST

Hier wird die vollständige URL bzw. die IP zum Server mit PostgreSQL angegeben. Läuft die DB auf der gleichen Maschine kann das auch 'localhost' sein.

Gültige Werte: vollständige URL bzw. localhost

Standardeinstellung: PHPPGADMIN_SERVER_x_HOST='localhost'

PHPPGADMIN_SERVER_x_PORT

Hier wird der zu verwendende Port für die DB-Connection eingestellt. Bleibt der Parameter leer, wird der Standard-Port, 5432, verwendet.

Gültige Werte: Port Nummer

Standardeinstellung: PHPPGADMIN_SERVER_x_PORT=''

PHPPGADMIN_SERVER_x_SSLMODE

Database SSL mode. Möglichkeiten: disable, allow, prefer, require.
Um SSL auf älteren Servern zu verwenden, verwenden Sie: legacy
Um den SSL-Modus zu ignorieren, verwenden Sie: unspecified

Gültige Werte: disable, allow, prefer, require

Standardeinstellung: PHPPGADMIN_SERVER_x_SSLMODE='allow'

PHPPGADMIN_SERVER_x_DEFAULTDB

Ändern Sie die Standarddatenbank nur, wenn Sie keine Verbindung herstellen können zu 'template1'. Für einen PostgreSQL 8.1+ Server, ist 'postgres' die richtige Einstellung.

Gültige Werte: Datenbankname

Standardeinstellung: PHPPGADMIN_SERVER_x_DEFAULTDB='template1'

PHPPGADMIN_SERVER_x_DUMP_PATH

Geben Sie den Pfad zu den Datenbank-Dienstprogrammen für diesen Server an. Sie können diese auf '' setzen, wenn kein Dumper vorhanden ist.

Gültige Werte: Vollständiger Pfad

Standardeinstellung: PHPPGADMIN_SERVER_x_DUMP_PATH='/usr/local/pgsql/bin/pg_dump'

PHPPGADMIN_SERVER_x_DUMP_ALL_PATH

Geben Sie den Pfad zu den Datenbank-Dienstprogrammen für diesen Server an. Sie können diese auf '' setzen, wenn kein Dumper vorhanden ist.

Gültige Werte: Vollständiger Pfad

Standardeinstellung: PHPPGADMIN_SERVER_x_DUMP_ALL_PATH='/usr/local/pgsql/bin/pg_dumpall'

Die Einstellungen für Advanced

PHPPGADMIN_ADVANCED_SETTINGS

Hier werden die Erweiterten Einstellungen eingeschaltet.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_ADVANCED_SETTINGS='no'

PHPPGADMIN_LANG

Standardsprache. E.g.: 'english', 'polish', etc. Wenn Sie 'auto' (die Standardeinstellung) angeben, wird die im Browser Eingestellte Sprache benutzt.

Gültige Werte: 'auto', 'english', 'polish', ...

Standardeinstellung: PHPPGADMIN_LANG='auto'

PHPPGADMIN_AUTOCOMPLETE

AutoComplete verwendet AJAX-Interaktion, um Fremdschlüsselwerte aufzulisten auf Einfügefelder. Es funktioniert derzeit nur auf einer Spalte Fremdschlüssel. Sie können einen der folgenden Werte auswählen:

Default on aktiviert AutoVervollständigen und schaltet sie
standardmäßig ein.
Default off aktiviert AutoVervollständigen, wird aber
standardmäßig deaktiviert.
Deaktivieren deaktiviert AutoVervollständigen.

Gültige Werte: 'default on', 'default off', 'disable'

Standardeinstellung: PHPPGADMIN_AUTOCOMPLETE='default on'

PHPPGADMIN_EXTRA_LOGIN_SECURITY

Wenn extra Login-Sicherheit gewählt wird, dann wird das login über phpPgAdmin ohne Passwort oder bestimmten Benutzernamen wie (pgsql, postgres, root, administrator) verweigert.

Setzen Sie diese Variable nur auf 'no' wenn Sie Verstehen, wie man PostgreSQL's pg_hba.conf ändert, um lokale Verbindungen ohne Passwort zu aktivieren.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_EXTRA_LOGIN_SECURITY='yes'

PHPPGADMIN_ONLY_OWNED_DB

Nur eigene Datenbanken anzeigen.
Anmerkung: Das versteckt einfach andere Datenbanken in der Liste. Es verhindert nicht in irgendeiner Weise, dass Ihre Benutzer andere Datenbanken auf anderen Wegen sehen. (z.B. 'SELECT * FROM pg_database' im SQL-Bereich ausführen.)

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_ONLY_OWNED_DB='no'

PHPPGADMIN_SHOW_COMMENTS

Kommentare zu Objekten anzeigen.
Kommentare sind eine gute Art eine Datenbank zu dokumentieren, aber sie brauchen Platz in der Schnittstelle.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SHOW_COMMENTS='no'

PHPPGADMIN_SHOW_ADVANCED

Anzeigen der erweiterten Objekte.
Bei der Einstellung 'yes' werden aggregates, types, operators, operator classes, conversions, languages and casts in phpPgAdmin angezeigt. Diese Werte sind selten gegeben und benötigen Platz in der Schnittstelle.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SHOW_ADVANCED='no'

PHPPGADMIN_SHOW_SYSTEM

Anzeige der System Objekte.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SHOW_SYSTEM='no'

PHPPGADMIN_SHOW_REPORTS

Anzeigen der Berichte.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SHOW_REPORTS='no'

PHPPGADMIN_OWNED_REPORTS

Nur eigene Berichte anzeigen.
Hinweis: Dies verhindert nicht, dass Personen auf andere Berichte auf anderen Wegen zugreifen.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_OWNED_REPORTS='yes'

PHPPGADMIN_MIN_PASS_LENGTH

Minimale Länge für das Benutzerpasswort.

Gültige Werte: Zahl

Standardeinstellung: PHPPGADMIN_MIN_PASS_LENGTH='1'

PHPPGADMIN_LEFT_WIDTH

Breite des linken Rahmens in Pixeln (Browser).

Gültige Werte: Ziffern

Standardeinstellung: PHPPGADMIN_LEFT_WIDTH='200'

PHPPGADMIN_THEME

Welches Thema verwendet werden soll.

Gültige Werte: default,

Standardeinstellung: PHPPGADMIN_THEME='default'

PHPPGADMIN_SHOW_OIDS

OIDs (Object Identifier) anzeigen beim Surfen von Tabellen?

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_SHOW_OIDS='no'

PHPPGADMIN_MAX_ROWS

Max-Datensätze, die auf einer Seite angezeigt werden.

Gültige Werte: Ziffern

Standardeinstellung: PHPPGADMIN_MAX_ROWS='30'

PHPPGADMIN_MAX_CHARS

Max-Zeichen für jedes Feld, im Anzeige-Modus.

Gültige Werte: Ziffern

Standardeinstellung: PHPPGADMIN_MAX_CHARS='50'

PHPPGADMIN_USE_XHTML_STRICT

Sende nur XHTML Header.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_USE_XHTML_STRICT='no'

PHPPGADMIN_HELP_BASE

Basis-URL für die PostgreSQL-Dokumentation. Falls '%s' vorhanden, wird es durch die PostgreSQL Version ersetzt (e.g. 7.3 )

Gültige Werte: URL zur Online-Hilfe

Standardeinstellung: PHPPGADMIN_HELP_BASE='http://www.postgresql.org/docs/%s/interactive/'

PHPPGADMIN_AJAX_REFRESH

Konfiguration für ajax Skripte Zeit in Sekunden. Wenn auf 0 gesetzt, werden die zu aktualisierenden Daten mit ajax deaktiviert.

Gültige Werte: Zahl

Standardeinstellung: PHPPGADMIN_AJAX_REFRESH='3'

Plugins

PHPPGADMIN_PLUGINS_N

Anzahl Plugins.

Gültige Werte: Zahl

Standardeinstellung: PHPPGADMIN_PLUGINS_N='1'

PHPPGADMIN_PLUGINS_x_NAME

Name des Plugins.

Gültige Werte: Name, Report

Standardeinstellung: PHPPGADMIN_PLUGINS_x_NAME='Report'

PHPPGADMIN_PLUGINS_x_ACTIVE

Soll dieser Datensatz aktiv sein.

Gültige Werte: yes, no

Standardeinstellung: PHPPGADMIN_PLUGINS_x_ACTIVE='no'

Einstellungen für den Webzugriff - User handling for web access

Wenn PHPPGADMIN_ACCESS_AUTH='yes' gesetzt ist werden hier die Benutzer verwaltet.

Angelegt, entfernt und mit einem Passwort berechtigt.

Report Datenbank verwalten

Bei diesem Menüpunkt wird die Report Datenbank angelegt und kann auch wieder entfernt werden. Für die Benutzung ist es erforderlich das Plugin Report zu aktivieren.

Das Plugin „Report“ ist Bestandteil von phpPgAdmin und muss nicht extra installiert werden.

eis 2017-05-03