PostgreSQL: Passwort MD5 ermitteln

Immer mal wieder geschieht es, dass ich den PostgreSQL MD5 Hash im Vorfeld ermitteln möchte, z.B. in SQL-Skripten, die Datenbankbenutzer anlegen und ich das Passwort nicht im Klartext ablegen möchte.

Nach ein wenig Recherche und ausprobieren, ist folgendes Bash-Kommando entstanden, um den Hash für das PostgreSQL-Passwort zu generieren.

echo "md5$(echo -n 'PasswordUser' | md5sum )" | tr -d "-"


# Beispiel
# user: Thomas
# pwd: 123

echo "md5$(echo -n '123Thomas' | md5sum )" | tr -d "-"

# Ausgabe: md5b5a51046812abff6595fc57b4e8adb4f

Dies Kommando erspart ab sofort den umständlichen Weg, den Benutzer mit CREATE USER … PASSWORD ‚…‘ anzulegen und dann in der Tabelle pg_catalog.pg_shadow nachzuschauen, wie der MD5 Hash vom vergebenen Passwort ist.