¿Cómo mantiene LDAP una sesión autenticada?

4

Siento que me estoy perdiendo algo, porque no encuentro una respuesta

Tengamos un escenario ficticio.

  1. Me conecto a un servidor LDAP
  2. Emito un comando BIND y me conecto con éxito
  3. (Creo que el servidor devolvería algo)
  4. emito un comando DELETE

¿Cómo sabe el servidor que todavía soy yo cuando emito el comando DELETE? Debe haber una sesión.

¿Pero qué aspecto tiene esa sesión? ¿Hay un token?

No estoy seguro de que esté haciendo las preguntas correctas aquí.

    
pregunta Andrey 11.07.2015 - 05:09
fuente

1 respuesta

1

Sabe que eres tú porque estás enviando todas las solicitudes a través de la misma conexión de flujo (TCP). (Y TCP lo sabe porque los puertos y los números de secuencia de paquetes coinciden).

En otras palabras, LDAP es un protocolo con estado , y toda la sesión (incluida la autenticación) está vinculada implícitamente a la conexión subyacente. (Lo mismo que con todos los demás protocolos similares, como IMAP o SSH).

Por supuesto, el TCP en sí no es muy bueno en eso (por ejemplo, simplemente rastrear los números de secuencia le permitiría a alguien hacerse cargo de la conexión), por lo general, se usan TLS y / o SASL para proporcionar cifrado e integridad.

Tenga en cuenta que, en lo que respecta al servidor LDAP, la respuesta es la misma: todas las solicitudes llegan a través de la misma conexión de flujo. Solo ahora TLS lo aplica criptográficamente.

(Nota al margen: Sí, SASL no es solo un protocolo de autenticación; también permite que los mecanismos obtengan una clave de sesión y la utilicen para "sellar".

Sin embargo, la función de sellado de SASL rara vez se usa debido a varias desventajas. LDAP es prácticamente el protocolo único que lo admite, mientras que todo lo demás se basa en TLS.)

    
respondido por el grawity 11.07.2015 - 13:46
fuente

Lea otras preguntas en las etiquetas