GNU/Linux >> Tutoriales Linux >  >> Linux

Mensaje de error de Postgres:FATAL:Falló la autenticación de identidad para el usuario...

Solución 1:

Significa que Postgres está intentando autenticar a un usuario mediante el protocolo Ident y no puede. La autenticación de identidad funciona así:

  • Tiene el rol de base de datos 'foo' en la base de datos 'db'
  • Tu pg_hba.conf archivo (en /etc/postgres-something/main ) define 'Ident' como el protocolo para conectarse a la base de datos db para usuarios que se conectan desde ciertos hosts
  • El nombre de usuario de Unix que hace la conexión es 'foo'
  • Un servidor Ident que se ejecuta en la máquina desde la que se conecta el usuario confirma que su nombre de usuario realmente es 'foo'

Posibles causas y soluciones:

  1. No hay servidor de identidad ejecutándose en la máquina desde la que intenta conectarse. Pruébelo intentando conectarse a él en el puerto 113. Si eso falla, instale un servidor Ident (p. ej., sudo apt-get install oidentd ).
  2. Hay un servidor Ident, pero no hay función de base de datos coincidiendo con el nombre con el que está tratando de conectarse ('foo' en el ejemplo anterior). Así que créalo conectándote de alguna manera a la base de datos con derechos de superusuario y haz CREATE ROLE foo . Alternativamente, agregue una entrada a /etc/postgresql/.../main/pg_ident.conf (o /var/lib/pgsql/12/data o donde sea).

  3. Tal vez el nombre de usuario de shell no coincida el rol de la base de datos. Puede probar esto conectándose al servidor Ident mientras se realiza una conexión y pasando los números de puerto correctos.

  4. Tal vez realmente quieras conectarte con una contraseña , no Ident. Edite el pg_hba.conf archivar adecuadamente. Por ejemplo, cambie:

    host all all 127.0.0.1/32 ident
    

    a

    host all all 127.0.0.1/32 md5
    

Solución 2:

No estoy seguro de las causas, pero esto me lo solucionó:

en pg_hba.conf

cambiar a esto:

alojar todos todos 127.0.0.1/32 md5

Error exacto:Caused by: org.postgresql.util.PSQLException: FATAL: Ident authentication failed for user "postgres"

Solución 3:

En CentOS, agregue la siguiente línea a /var/lib/pgsql/9.3/data/pg_hba.conf :

host all all 127.0.0.1/32 trust

Y comentar las otras entradas.

Por supuesto, esta configuración no seguro, pero si solo estás jugando con una VM de desarrollo como yo, probablemente esté bien...


Linux
  1. Error:la validación md5 falló para PyYAML-3.11.zip ¿posible problema de descarga? [Solución]

  2. Error al iniciar el servidor de la base de datos PostgreSQL:agente de autenticación no registrado para el proceso de Unix [resuelto]

  3. ¿Cómo configurar postgresql por primera vez?

  4. ERROR 1045 (28000):Acceso denegado para el usuario 'root'@'localhost' (con contraseña:SÍ)

  5. mysql (mariadb) ERROR 1698 (28000):Acceso denegado para el usuario 'root'@'localhost'

Cómo resolver un error de MySQL:acceso denegado para el usuario [email protected]

Deshabilitar la autenticación de contraseña SSH para un usuario o grupo específico

Cambiar el método de autenticación para el usuario raíz de MySQL en Ubuntu

Solución de problemas:MySQL/MariaDB Error #1044 Е Acceso denegado para el usuario

Solución:error:no se pudieron descargar los metadatos para el flujo de aplicaciones del repositorio:CentOS 8

¿Cómo resolver el error SSH "Demasiadas fallas de autenticación para el usuario root"?