¿Todavía se recomienda el inicio de sesión único con LDAP hoy para integrar un montón de herramientas de código abierto?

8

Estamos liderando un ejercicio con una institución pública para instalar diferentes herramientas de código abierto para que puedan experimentar y ver lo que más les conviene.

Por lo tanto, estamos instalando:

  • un wiki (dokuwiki)
  • mediagoblin
  • gnu social
  • etherpad
  • ethercalc

y posiblemente un poco más

Estábamos pensando en usar LDAP para armonizar los inicios de sesión.

Pero a menudo parece que los complementos LDAP ya no se mantienen, y la configuración es difícil de funcionar bien, algunas herramientas tienen documentos LDAP insuficientes.

¿Sigue siendo una buena idea hoy hacer esto a través de LDAP? ¿OAuth es quizás una mejor opción?

Sé que esta no es una pregunta de código, pero lo que nos gustaría entender es si debemos apegarnos a nuestra decisión de utilizar LDAP o si debemos considerar otras rutas. Muchas gracias

bucle_ transitorio
fuente

Respuestas:

13

LDAP no puede proporcionar inicio de sesión único. Hay una gran diferencia entre poder usar los mismos usuarios y tener un inicio de sesión único, lo que significa que puede iniciar sesión en todos los sistemas a la vez, con un solo formulario de inicio de sesión. De lo contrario, LDAP es perfectamente factible para usar la misma información de inicio de sesión en todos los sistemas.

OAuth es solo un protocolo para iniciar sesión y puede usar LDAP como back-end para la gestión de usuarios.

Florin Asăvoaie
fuente
2
De hecho, de alguna manera estaba al tanto de esta distinción, pero la expresaste de manera clara y concisa, gracias. Buscaré en Google sobre OAuth / LDAP como arquitectura de inicio de sesión único, pero si tiene algún enlace relevante que le gustaría compartir, lo agradeceré mucho.
transient_loop
1

En el mundo universitario, el sistema Apereo [anteriormente Jasig] CAS es una forma común de hacer Single Sign On para grandes conjuntos de aplicaciones web. Con CAS, el usuario solo ingresa su contraseña en el servidor de autenticación: las aplicaciones individuales validan un ticket único en lugar de ver la contraseña del usuario. Esta es una gran victoria de seguridad cuando se trata de aplicaciones desarrolladas por muchos grupos internos y proveedores, ya que ninguna de las aplicaciones tiene acceso a las contraseñas de los usuarios.

Existen numerosas bibliotecas de clientes CAS disponibles para la mayoría de los entornos de programación y el soporte CAS integrado es cada vez más común para las aplicaciones utilizadas o vendidas a las universidades. Además del "servidor Jasig CAS" principal, también hay varios servidores adicionales disponibles, incluido el servidor Ruby CAS y un módulo para Drupal que puede actuar como servidor CAS para autenticar aplicaciones adicionales en la base de datos Drupal.

El servidor Jasig CAS está escrito en Java y puede ser respaldado por cualquier número de controladores de autenticación , que incluyen:

  • Base de datos
  • JAAS
  • LDAP
  • Legado
  • OAuth 1.0 / 2.0, OpenID
  • RADIO
  • SPNEGO (Windows)
  • De confianza (REMOTE_USER)
  • X.509 (certificado SSL del cliente)

El servidor Jasig CAS puede actuar como una fuente de autenticación para la aplicación a través de varios protocolos diferentes utilizados para el inicio de sesión único:

  • Protocolo CAS 1/2/3
  • Protocolo SAML 1.1 / 2.0
  • Protocolo OAuth
  • Protocolo OpenId

Incluso se puede usar como autenticación detrás de un proveedor Shibboleth o usar un cliente Shibboleth como back-end de autenticación.

Nota: la organización Jasig se está fusionando con la organización Apereo, por lo que algunas URL pueden cambiar en el futuro.

Adam Franco
fuente
en aras de la divulgación completa, podría valer la pena mencionar que está afligido con el proyecto en cuestión
Journeyman Geek
Esa es una nota justa. Estoy afiliado al proyecto CAS como usuario y co-mantenedor de la biblioteca del cliente PHP para el sistema, phpCAS. He presentado algunos informes de errores y parches para el proyecto principal, pero no creo que ninguno se haya integrado en el proyecto CAS.
Adam Franco