PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Ich habe versucht, postgresql md5 in scram-sha-256 zu ändern, und ich bekomme die FATAL-Passwortauthentifizierung fehlgeschlagen

Jeder Benutzer-Passwort-Hash wird in der Tabelle pg_authid gespeichert . Es enthält den Hash-Algorithmus, der verwendet wird, um das Passwort in seinen Hash umzuwandeln.

Beim Setzen der password_encryption in postgresql.conf stellen Sie die Standardverschlüsselung ein, d. h. die, die beim Erstellen eines Benutzers oder beim (Neu-) Festlegen Ihres Passworts verwendet wird. Die Tabelle pg_authid ist nicht aktualisiert.

Wenn Sie pg_hba.conf ändern, sagen Sie, nur Passwörter zu akzeptieren, die mit der angegebenen Methode gehasht wurden. Die Tabelle pg_authid ist nicht aktualisiert.

Es gibt einen wichtigen Hinweis im doc :

Die Lösung lautet also:

  1. beginnen Sie mit den vorhandenen Benutzern md5
  2. aktualisiere postrgres.conf, um Scram zu verwenden, und lade die Konfiguration neu
  3. Benutzerpasswort zurücksetzen:Es wird nun als scram in pg_authid gespeichert
  4. Sie können immer noch md5 in pg_hba.conf verwenden
  5. Wenn Sie mit dem Wechsel von md5 zu scram zufrieden sind, aktualisieren Sie pg_hba.conf, um scram anstelle von md5 anzugeben