active directory - krbtgt - Kerberos: kvno es ''1'' en tickets de clientes
kerberos como funciona (2)
Estamos configurando SSO para nuestra aplicación web para un cliente, pero lamentablemente no tenemos acceso al controlador de dominio (una razón más por la que no hacemos más experimentos para verificar nuestras suposiciones). Por lo tanto, solicitamos ejecutar ktpass.exe
y preparar el archivo .ktpass
para usarlo en la configuración de nuestro servidor.
El problema al que nos enfrentamos es "la versión especificada de la clave no está disponible".
Busqué el archivo keytab (knvo = 5) y revisé el tráfico con Wireshark en nuestro servidor web:
Como puede ver, kvno = 1 en el ticket AP-REQ
. Supongo que es el boleto correcto para verificar la versión de kvno.
Sé que hay problemas de compatibilidad con el dominio de Windows 2000 ( /kvno 1
debe usarse para la compatibilidad de dominio de Windows 2000), pero se dice que manejamos el servidor de Windows 2008R2 (y puedo ver el valor msDS-Behavior-Version = 4
para nuestro controlador de dominio, que coincide con 2008R2!).
¿Hay algo así como el modo de dominio W2K con el que nos enfrentamos?
¿Ayudaría explícitamente kvno = 1 resolver el problema? Es decir, ktpass.exe [..] /kvno 1
EDIT # 1
El problema era sobre SPN incorrectamente especificado. Era HTTP/[email protected] en lugar de utilizar un nombre de dominio completo. Esto solo funcionaría si se habilitaran WINS, pero resultó que no.
Después de generar keytab con el SPN correcto, todo funciona bien y se envía kvno de acuerdo con el valor real de la cuenta.
Amablemente aceptará una respuesta que explique el efecto que observé.
No conozco bien las partes internas, pero los clientes de MIT Kerberos envían la resolución de la parte de nombre de host de un principal de servicio basado en host para canonicalizar el nombre de host. En mi experiencia, si el nombre no se resuelve, afecta la autenticación de Kerberos. Cuando configuro las cuentas de servicio para SQL Server para hacer Kerberos, siempre tengo que registrar un SPN con el nombre de host y el nombre de dominio completo porque los diferentes componentes de SQL parecen usar diferentes métodos de resolución.
En una topología de red muy básica, WINS podría resolver el nombre. Incluso sin WINS, el servicio NetBIOS podría resolver el nombre de host. WINS y NetBIOS dependen en gran medida de las difusiones, por lo que si su servidor web está en una subred diferente, la resolución del nombre de NetBIOS fallará, y WINS también si no se configura correctamente. Además, Windows necesita usar el servicio TCP / IP NetBIOS Helper.
El problema era sobre SPN incorrectamente especificado. Era HTTP/[email protected]
lugar de utilizar un nombre de dominio completo. Esto solo funcionaría si se habilitaran WINS, pero resultó que no.
Después de generar keytab con el SPN correcto, todo funciona bien y se envía kvno de acuerdo con el valor real de la cuenta.
Amablemente aceptará una respuesta que explique el efecto que observé.