Estoy tratando de implementar el SSO el uso de un cliente de Windows y JBoss. Dueño de mi PC de desarrollo, JBoss se ejecuta en Windows 7, en el servidor de desarrollo, que se ejecuta en (Red Hat) de Linux.

Hay un JBoss Negociación Toolkit que me permite comprobar si el Negiation encabezado está llegando correctamente.

La BasicNegotiation prueba funciona bien siempre he JBoss se ejecuta en mi propia PC, utilizando localhost. El enviado de encabezado es

Authorization: Negotiate YHgGBisGAQUFAqBuMGygMDAuBgorBgEEAYI3AgIKB... (y algunos más bytes)

De la prueba de respuesta es

Negociación Toolkit
Básicos De La Negociación
WWW-Authenticate – Negociar YHgGBisGAQUFAqBuMGygMDAuBgorBgEEayi3agik…

NegTokenInit
Mensaje Oid – SPNEGO
Mech Tipos – {NTLM} {Kerberos V5 Legado} {Kerberos V5} {1.3.6.1.4.1.311.2.2.30}
Req Banderas –
Mech Token -TlRMTVNTUAABAAAAl7II4gQABAAyAAAAcgakacgaaaagabadaaaad0lqsuvwmtawmjvjuelf
Mech Lista Mic –

Pero en el servidor Linux, el mismo de la prueba no funciona. La base de la razón (supongo) es que el encabezado se ve diferente:

Authorization: Negotiate TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbAdAAAADw==

Y, a continuación, JBoss Negociación Toolkit hace un retroceso a la Autenticación NTLM, que no quiero y que aparece como error en la webapp de salida.

Negociación Toolkit
Negociación NTLM
WWW-Authenticate – Negociar TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAaaaaaaaaaaagabadaaaadw==

NTLM – Negotiate_Message
Advertencia, este es NTLM, sólo SPNEGO es compatible!
Negociar Banderas – (encryption56Bit)(explicitKeyExchange)(sessionKeyExchange128Bit)
negotiateVersion)(ntlm2)(alwaysSign)(ntlm)(lmKey)(signo)(requestTarget)(oem)(unicode)
Nombre de dominio = null {longitud=0}{maxLength=0}{offset=0}
Nombre de estación de trabajo = null {longitud=0}{maxLength=0}{offset=0}
Versión ?

He configurado Internet Explorer y Firefox para enviar la Negociación de cabecera, y ambos se producirá un error con el servidor Linux.

¿Qué estoy haciendo mal?

Por cierto: he leído en alguna parte que Windows siempre envía el Kerberos Negociación de encabezado en las máquinas locales, ¿es cierto?

OriginalEl autor eerriicc | 2013-06-27

4 Comentarios

  1. 2

    Mi Internet Explorer utiliza para enviar un NTLM Encabezado en lugar de una kerberos. Razón: Windows había una contraseña guardada para el mismo host en su caja fuerte.

    El usuario y la contraseña introducidos en la caja de seguridad no eran los mismos que el de mi cuenta de Windows, pero maked ninguna diferencia. Sólo el nombre del servidor (incluso no calificado completo) era relevante.

    Tanques para http://www.msxfaq.de/verschiedenes/kerberosbrowser.htm para la explicación (en alemán).

    ¿Por qué no enviar el ticket de Kerberos información a mi JBoss en Linux?

    Muchas gracias Olivier. Me salvó la noche! Este fue el último lo he imaginado. Sólo he tenido que cambiar el nombre de usuario DOMINIO\USUARIO de estilo en [email protected]_DOMAIN.NAME

    OriginalEl autor Olivier Faucheux

  2. 1

    Gracias por las respuestas. En nuestro caso el problema es que tenemos dos dominios de Windows. Yo estaba tratando de acceder al servidor Linux en el dominio con el Explorador de Windows en el dominio B. Obviamente, que no funciona…

    OriginalEl autor eerriicc

  3. 0

    El navegador envía una NTLM tipo-1 token porque Kerberos ha fallado debido a su AD/DNS configuración es incorrecta. Este comportamiento es correcto. Arreglar su configuración de DNS.

    OriginalEl autor Michael-O

  4. 0

    Aquí es un buen resumen de lo que puede ir mal: https://www.pingidentity.com/support/answers/index.cfm/why-am-i-not-getting-a-kerberos-ticket?id=90640000000CaWgAAK

    Yo siempre hago una captura de wireshark para ver la comunicación entre el navegador y el servicio, y también entre el navegador y el ANUNCIO. En el caso de que el problema podría ser con el último. Por ejemplo, una vez que he utilizado http://myGoodLookingDNSAlias dirección de un servicio, el cual fue resuelto a http://realBadLookingServerName, pero se me olvidó registrar el último. Por lo que el navegador tengo un KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN de error del ANUNCIO, y no enviar el ticket.

    Saludos,
    András

    el enlace está roto. por favor, actualizar o eliminar.

    OriginalEl autor user2538123

Dejar respuesta

Please enter your comment!
Please enter your name here