Erstellt vor 2 Jahren
Geschlossen vor 14 Monaten
#2126 closed Fehler (invalid)
Fehler beim Erstellen von kivitendo_auth
| Erstellt von: | Ciatronical | Verantwortlicher: | |
|---|---|---|---|
| Priorität: | niedrig | Meilenstein: | |
| Komponente: | kivitendo ERP | Version: | 3.0.0 |
| Schweregrad: | unwesentlich | Stichworte: | kivitendo_auth |
| Beobachter: |
Beschreibung
Bein Erzeugen der kivitendo_auth mit Benutzername und Passwort wird die kivitendo_auth unvollständig erstellt.
less /var/log/postgresql/postgresql-8.4-main.log:
"konnte Daten vom Client nicht empfangen: Die Verbindung wurde vom Kommunikationspartner zurückgesetzt"
Die admin.pl versucht die kivitendo_auth immer wieder neu zu erstellen. Wird das Passwort in der kivitendo.conf eingetragen so tritt der Fehler nicht mehr auf.
Zum Reproduzieren:
cp config/kivitendo.conf.default config/kivitendo.conf
dropdb kivitendo_auth
Änderungshistorie (3)
comment:1 Geändert vor 2 Jahren durch t.heck@…
comment:2 Geändert vor 2 Jahren durch Ciatronical
Ja so ist es.
Ist es dann notwendig den Benutzernamen und das Passort einzugeben?
Können die beiden Eingabefelder entfallen oder sollte das Passwd
beim Anlegen der auth-DB automatisch in die kivitendo.conf
eingetragen werden?
Oder sollte dem Admin eine Fehlermeldung angezeigt werden?
Oder fett in die Doku schreiben..
comment:3 Geändert vor 14 Monaten durch m.bunkus@…
- Lösung auf invalid gesetzt
- Status von new nach closed geändert
Es verhält sich wie folgt:
Beim Anlegen der Auth-Datenbank verbindet sich kivitendo als der User mit PostgreSQL, der im Formular angegeben ist. Das Formular wird mit den Daten aus der Konfiguration vorbelegt, kann aber geändert werden.
Die Auth-Datenbank wird dann so angelegt, dass der Besitzer der Auth-Datenbank der in der Konfiguration hinterlegte User ist.
Damit ist es möglich, in der Konfiguraiton einen User anzugeben, der keine Datenbanken anlegen darf, sofern im Formular dann temporär der Name eines Users angegeben wird, der Datenbanken anlegen darf.
Das funktioniert einwandfrei. Keine Änderung notwendig.
Was nicht geht, und nicht gehen kann, ist in der Konfiguration einen User anzugeben, dann manuell z.B. in psql eine Datenbank anzulegen, die diesem User nicht gehört. Dann darf der User auf die neu angelegte Datenbank nicht zugreifen, ja. Das ist aber ein Admin-Fehler und kein Bug in kivitendo.
Das geht auch recht schnell:
psql# CREATE USER kivitendo PASSWORD 'geheim!'; psql# CREATE DATABASE kivitendo;
Ups, schon falsch. Richtig:
psql# CREATE USER kivitendo PASSWORD 'geheim!'; psql# CREATE DATABASE kivitendo OWNER kivitendo;
Dann geht's auch in der Oberfläche. Oder halt kivitendo die Datenbank anlegen lassen und dafür als Logindaten im Formular einmalig die Daten des PostgreSQL-Users postgres anzugeben.
Wie gesagt: kein Bug.

Bei mir wird die Datenbank von dem -im Formular- angegebenem Benutzer erstellt. Jedoch schlägt dann das Auslesen dieser fehlt, wenn der -in der kivitendo.conf- festgelegte Benutzer keine Rechte für die Datenbank hat.