Intercambio del servicio de autenticación

El usuario comienza a iniciar sesión en la red escribiendo un nombre de inicio de sesión y una contraseña. El cliente Kerberos de la estación de trabajo del usuario convierte la contraseña en una clave de cifrado y guarda el resultado en una variable de programa.

A continuación, el cliente solicita credenciales para el servicio de concesión de vales (TGS) del Centro de distribución de claves (KDC) enviando al servicio de autenticación del KDC un mensaje de tipo KRB_AS_REQ (solicitud de servicio de autenticación Kerberos). La primera parte de este mensaje identifica al usuario y al servicio TGS que se solicita. La segunda parte de este mensaje contiene datos de autenticación previa destinados a demostrar que el usuario conoce la contraseña. Esto es simplemente un mensaje autenticador que se cifra con la clave maestra derivada de la contraseña de inicio de sesión del usuario.

Cuando el KDC recibe KRB_AS_REQ, busca el usuario en su base de datos, obtiene la clave maestra del usuario asociado, descifra los datos de autenticación previa y evalúa la marca de tiempo dentro. Si la marca de tiempo es válida, el KDC puede estar seguro de que los datos de autenticación previa se cifraron con la clave maestra del usuario y, por tanto, que el cliente es auténtico.

Una vez que el KDC ha comprobado la identidad del usuario, crea las credenciales que el cliente puede presentar al TGS, como se indica a continuación:

  1. El KDC inventa una clave de sesión de inicio de sesión y cifra una copia con la clave maestra del usuario.
  2. El KDC inserta otra copia de la clave de sesión de inicio de sesión y los datos de autorización del usuario en un vale de concesión de vales (TGT) y cifra el TGT con la propia clave maestra del KDC.
  3. El KDC devuelve estas credenciales al cliente respondiendo con un mensaje de tipo KRB_AS_REP (respuesta del servicio de autenticación Kerberos).
  4. Cuando el cliente recibe la respuesta, usa la clave derivada de la contraseña del usuario para descifrar la nueva clave de sesión de inicio de sesión.
  5. El cliente almacena la nueva clave en su caché de vales.
  6. El cliente extrae el TGT del mensaje y lo almacena también en su caché de vales.