2012-07-27 15 views
5

Actualmente estoy trabajando en la implementación de mecanismos de autenticación empresarial en nuestra aplicación web Java, incluido el inicio de sesión único. Nuestro principal objetivo son las redes de Windows, y Kerberos suena como una opción razonable. Sidenote: por lo que yo entiendo, el protocolo utilizado en el entorno web (HTTP) para SSO es SPNEGO, y básicamente es un envoltorio alrededor de Kerberos. Por lo tanto, parece que las bibliotecas Kerberos HTTP SSO están usando SPNEGO, corrígeme si me equivoco.Elección de Kerberos (SPNEGO) Biblioteca Java para inicio de sesión único de aplicación web

Cuando comencé a investigar este tema, me di cuenta de que no hay una opción obvia. Déjenme enumerar ésos:

  1. Spring security Kerberos/SPNEGO extension. Esta fue la primera vez que miré (ya que estamos usando la seguridad de Spring), pero parece estar atascada en el segundo hito de v1.0.0 hace unos años. Solo esta SO question da pocas esperanzas de que pueda ser utilizada para producción.
  2. WAFFLE - Windows Authentication Functional Framework. Parece estar activo y rico en funciones. Se puede 'enchufar' como servlet genérico, y también como Spring security filter.
  3. SPNEGO SourceForge. Parece muy ligero, proporciona un filtro HTTP Servlet, los tutoriales son fáciles de seguir.

¿Hay alguna razón en particular para elegir una opción sobre la otra? ¿Hay alguna otra opción?

Respuesta

3

En primer lugar, su suposición es correcta. Necesita SPNEGO para realizar SSO con HTTP.

  1. Esto se puede usar razonablemente solo en primavera. Si lo tienes, consiguelo. Lo estamos usando por más de dos años. Hace su trabajo
  2. Esto funciona solo en Windows.
  3. Utiliza el mismo JGSS que el material de Spring pero es independiente del framework. Esto parece funcionar muy bien.

Si está utilizando Tomcat 7, ya hay soporte incorporado. He donado el código apropiado. Debes especficar lo que esperas exactamente. Si no tiene expectativas pero la autenticación usa 3 o 1 con Spring.

+0

Lo sentimos, pero el punto "2" es incorrecto. Mis servidores Tomcat con SPNEGO se ejecutan correctamente en Linux. También probé la autenticación de Firefox que se ejecuta en Linux con la pila del cliente kerberos configurada. –

+0

@YvesMartin, muchas respuestas antiguas no son válidas por ahora y me han atacado por esto una vez. Fui sincero en 2012. –

+0

lo siento otra vez, pero primero implementé en 2009 un servidor Alfresco en Java 6 con autenticación SPNEGO en el servidor Linux con clientes Windows, Linux y Mac para EPFL. En resumen, tan pronto como Java incluyó el soporte de Kerberos, ya era una plataforma independiente. –

Cuestiones relacionadas