SCRAM auf PostgreSQL in Jitterbit Private Agents
Einführung
Diese Seite erklärt, wie man die Passwortverschlüsselung der PostgreSQL-Installation von MD5 zu SCRAM-SHA-256 ändert. Führen Sie die Schritte in diesen Abschnitten der Reihe nach aus. (Führen Sie den SQL-Befehl als PostgreSQL-Admin-Benutzer aus.)
Private Agents verwenden standardmäßig MD5-Passwortverschlüsselung für die gebündelte PostgreSQL-Instanz. Unter Windows verwenden Agents, die mit dem Silent Installer installiert wurden, stattdessen SCRAM-SHA-256.
Voraussetzungen
-
Für Windows-Installationen Zugriff auf ein Microsoft Windows-Administratorkonto. Für Linux-Installationen ein Konto mit Root-Rechten.
Teil 1: PostgreSQL neu konfigurieren
-
Überprüfen Sie in einer
psql-Sitzung die aktuelle Verschlüsselungsmethode:SHOW password_encryption;Erwartete Ausgabepassword_encryption --------------------- md5 (1 row) -
Bearbeiten Sie die Dateien
postgresql.confundpg_hba.confder PostgreSQL-Instanz. Diese befinden sich normalerweise im Verzeichnis/opt/jitterbit/DataInterchange/pgsql/dataunter Linux und Docker sowie im OrdnerC:\Program Files\PostgreSQL\X\dataunter Windows (wobeiXdie Hauptversionsnummer ist).-
Suchen Sie in
postgresql.confden Parameterpassword_encryptionund ändern Sie seinen Wert vonmd5zuscram-sha-256. -
Ändern Sie in
pg_hba.confdie Werte in den SpaltenMETHODvonmd5zuscram-sha-256für die gewünschten Verbindungen.
-
-
Laden Sie in einer
psql-Sitzung die Konfiguration neu:SELECT pg_reload_conf(); -
Überprüfen Sie die aktuelle Verschlüsselungsmethode erneut:
SHOW password_encryption;Erwartete Ausgabepassword_encryption --------------------- scram-sha-256 (1 row)
Teil 2: Benutzerkennwörter aktualisieren
-
Listen Sie in einer
psql-Sitzung Konten auf, die MD5-Passwortverschlüsselung verwenden:SELECT rolname, rolpassword ~ '^SCRAM-SHA-256$' AS has_scram FROM pg_authid WHERE rolcanlogin;Tipp
In einem standardmäßigen Private Agent-System sollten nur zwei Benutzer aufgelistet sein:
postgresundjitterbit.Erwartete Ausgaberolname | has_scram -----------+----------- postgres | f jitterbit | f (2 rows) -
Aktualisieren Sie für jedes Konto mit
has_scramalsfdie Kennwörter mit dem folgenden Befehl:ALTER ROLE <username> PASSWORD '<password>';-
<username>: Der PostgreSQL-Benutzername des Benutzers. -
<password>: Ein neues Passwort für den Benutzer.
Tipp
Sie können das vorhandene Passwort jedes Kontos wiederverwenden.
-
Teil 3: PgBouncer neu konfigurieren
Um PgBouncer neu zu konfigurieren, führen Sie diese Schritte aus:
-
Rufen Sie die SCRAM-Verifier-Hash-Zeichenkette ab und notieren Sie sie:
SELECT rolname, rolpassword FROM pg_authid WHERE rolname = 'jitterbit';Notieren Sie den Wert von
rolpassword. (Er sollte mitSCRAM-SHA-256beginnen.) -
Bearbeiten Sie die Datei
users.txtvon PgBouncer, normalerweise unter/opt/jitterbit/pgbouncer/share/doc/pgbouncer/auf Linux undC:\Program Files\Jitterbit Agent\pgbouncerunter Windows.Ersetzen Sie den Hash-Wert durch den Wert, den Sie im vorherigen Schritt kopiert haben.
Beispiel users.txt mit ursprünglichem Hash"jitterbit" "md5b51676b2b6ff8113190a8e4df1b3a144"Beispiel users.txt mit aktualisiertem Hash"jitterbit" "SCRAM-SHA-256$4096:DaRaCof9KFmKvfxW/OIAsg==$gAmuj8MsIamBk/MsLmCrg2FO9FXeFBx+vmm0cUxXkXw=:mlH5eE3+AEdSniA0NPocfSt1BbcLAryftXhYWbMsaS0="
Teil 4: Dienste neu starten
Starten Sie den Private Agent neu:
jitterbit restart
"C:\Program Files\Jitterbit Agent\StopServices.bat"
"C:\Program Files\Jitterbit Agent\StartServices.bat"