SCRAM en PostgreSQL en agentes privados de Jitterbit
Introducción
Esta página explica cómo cambiar la encriptación de contraseñas de tu instalación de PostgreSQL de MD5 a SCRAM. Sigue los pasos en estas secciones en secuencia. (Ejecuta el comando SQL como el usuario administrador de PostgreSQL.)
Requisitos previos
-
Para instalaciones en Windows, acceso a una cuenta de administrador de Microsoft Windows. Para instalaciones en Linux, una cuenta con privilegios de root.
Parte 1: Reconfigurar PostgreSQL
-
En una sesión de
psql, verifica el método de encriptación actual:SHOW password_encryption;Salida esperadapassword_encryption --------------------- md5 (1 row) -
Edita los archivos
postgresql.confypg_hba.confde la instancia de PostgreSQL. Estos suelen estar ubicados en el directorio/opt/jitterbit/DataInterchange/pgsql/dataen Linux y Docker, y en la carpetaC:\Program Files\PostgreSQL\X\dataen Windows (dondeXes el número de versión principal).-
En
postgresql.conf, encuentra el parámetropassword_encryptiony cambia su valor demd5ascram-sha-256. -
En
pg_hba.conf, cambia los valores en las columnasMETHODdemd5ascram-sha-md5para las conexiones deseadas.
-
-
En una sesión de
psql, recarga la configuración:SELECT pg_reload_conf(); -
Vuelve a verificar el método de encriptación actual:
SHOW password_encryption;Salida esperadapassword_encryption --------------------- scram-sha-256 (1 row)
Parte 2: Actualizar contraseñas de usuarios
-
En una sesión de
psql, lista las cuentas que utilizan encriptación de contraseñas MD5:SELECT rolname, rolpassword ~ '^SCRAM-SHA-256$' AS has_scram FROM pg_authid WHERE rolcanlogin;Consejo
En un sistema estándar de agente privado, solo deberían aparecer dos usuarios listados,
postgresyjitterbit.Salida esperadarolname | has_scram -----------+----------- postgres | f jitterbit | f (2 rows) -
Para cada cuenta con
has_scrammostrandof, actualiza sus contraseñas utilizando el siguiente comando:ALTER ROLE <username> PASSWORD '<password>';-
<username>: El nombre de usuario de PostgreSQL del usuario. -
<password>: Una nueva contraseña para el usuario.
Consejo
Puedes reutilizar la contraseña existente de cada cuenta.
-
Parte 3: Reconfigurar PgBouncer (si está instalado)
Si estás utilizando PgBouncer, sigue estos pasos:
-
Obtén la cadena de hash del verificador SCRAM y anótala:
SELECT rolname, rolpassword FROM pg_authid WHERE rolname = 'jitterbit';Toma nota del valor de
rolpassword. (Debería comenzar conSCRAM-SHA-256.) -
Edita el archivo
users.txtde PgBouncer, que generalmente se encuentra en/opt/jitterbit/pgbouncer/share/doc/pgbouncer/en Linux, yC:\Program Files\Jitterbit Agent\pgbounceren Windows.Reemplaza el valor del hash con el valor copiado del paso anterior.
Ejemplo de users.txt con hash original"jitterbit" "md5b51676b2b6ff8113190a8e4df1b3a144"Ejemplo de users.txt con hash actualizado"jitterbit" "SCRAM-SHA-256$4096:DaRaCof9KFmKvfxW/OIAsg==$gAmuj8MsIamBk/MsLmCrg2FO9FXeFBx+vmm0cUxXkXw=:mlH5eE3+AEdSniA0NPocfSt1BbcLAryftXhYWbMsaS0="
Parte 4: Reiniciar servicios
Reinicia el agente privado:
jitterbit restart
"C:\Program Files\Jitterbit Agent\StopServices.bat"
"C:\Program Files\Jitterbit Agent\StartServices.bat"