El método de autenticación de identificación funciona obteniendo el nombre de usuario del sistema operativo del cliente de un servidor de identificación y usándolo como el nombre de usuario permitido de la base de datos (con una asignación de nombre de usuario opcional). Esto solo es compatible con conexiones TCP / IP.

Nota

Cuando se especifica ident para una conexión local (no TCP / IP), en su lugar se utilizará la autenticación de pares (consulte la Sección 20.9).

Las siguientes opciones de configuración son compatibles con ident:

map

Permite el mapeo entre el sistema y los nombres de usuario de la base de datos. Consulte la Sección 20.2 para obtener más detalles.

El Protocolo de identificación se describe en RFC 1413. Prácticamente todos los sistemas operativos similares a Unix se envían con un servidor de identificación que escucha en el puerto TCP 113 de forma predeterminada. La funcionalidad básica de un servidor de identidades es responder preguntas como ¿Qué usuario inició la conexión que sale de su puerto? X y se conecta a mi puerto Y?. Dado que PostgreSQL conoce ambos X y Y cuando se establece una conexión física, puede interrogar al servidor de identificación en el host del cliente que se conecta y teóricamente puede determinar el usuario del sistema operativo para cualquier conexión dada.

El inconveniente de este procedimiento es que depende de la integridad del cliente: si la máquina del cliente no es confiable o está comprometida, un atacante podría ejecutar casi cualquier programa en el puerto 113 y devolver cualquier nombre de usuario que elija. Por lo tanto, este método de autenticación solo es apropiado para redes cerradas donde cada máquina cliente está bajo un estricto control y donde la base de datos y los administradores del sistema operan en estrecho contacto. En otras palabras, debe confiar en la máquina que ejecuta el servidor de identificación. Preste atención a la advertencia:

El Protocolo de identificación no pretende ser un protocolo de autorización o control de acceso.

RFC 1413

Algunos servidores de identificación tienen una opción no estándar que hace que el nombre de usuario devuelto se cifre, utilizando un key que solo conoce el administrador de la máquina de origen. Esta opción no debe usarse cuando se usa el servidor de identificación con PostgreSQL, ya que PostgreSQL no tiene ninguna forma de descifrar el devuelto string para determinar el nombre de usuario real.

Anterior Arriba próximo
20,7. Autenticación SSPI Casa 20,9. Autenticación de pares