Pregunta

este es el escenario:  Existen múltiples sistemas web (en su mayoría lampp / wampp), la mayoría de ellos con información de inicio de sesión separada (algunos lo comparten). Estamos considerando los beneficios / desventajas de unificarlos de alguna manera, o al menos facilitar el manejo de las partes de administración de usuarios.

Debido a la naturaleza de algunos sistemas (es una mezcla de sistemas OSS personalizados, software desarrollado internamente y software comercial de terceros) no podemos unificar todas las pantallas de inicio de sesión en una sola pantalla.

Una idea que se transmite es una especie de cerebro maestro de inicio de sesión donde podemos controlar la creación de todos los nombres de usuario, los permisos, la inactivación, etc. Esto hará que la gente tenga que iniciar sesión manualmente en cada sistema, pero al menos hará que La carga administrativa de la gestión de usuarios más sencilla.

¿Existe alguna solución conocida para este tipo de problema que involucre (de lo contrario, podría considerarse) cambiar la menor cantidad posible de código / sistemas?

Editar: OpenID no funciona para nosotros ya que tenemos diferentes necesidades de inicio de sesión y algunos sistemas que no podemos controlar directamente cómo manejan el proceso de inicio de sesión (pero podemos controlar a los usuarios / contraseñas).

¿Fue útil?

Solución

Lo que hicimos fue centralizar todos los detalles de inicio de sesión en un repositorio (Active Directory para nosotros), luego escribimos una biblioteca c # para autenticar con envoltorios para todos los idiomas que programamos en (PHP, C, .NET, etc.). y luego simplemente escribí un código de pegamento en el lugar apropiado para cada aplicación. Aparte de nuestras aplicaciones internas, iniciamos sesión con éxito en Mediawiki, Subversion, ActiveCollab y Apache de esta manera.

Implica escribir una cantidad razonable de código, pero no cantidades ridículas, y también funcionará para el futuro. No puedo ver una solución práctica que sea más fácil que esto.

Leyendo tu pregunta, observo que esto es más o menos lo que estás pensando, ¡pero funcionará!

Otros consejos

Hay una gran industria a su alrededor y se llama IAM - Identity Access Management. Las soluciones IAM básicamente hacen lo que Usted desea: administrar usuarios, permisos de usuarios y traducir su estado interno a la multitud de sistemas. Dependiendo de la posibilidad de integración, es posible que tenga un " SSO " - Inicio de sesión único para algún software o puede tener una única fuente de autenticación. El primero difiere del hecho de que el usuario de SSO necesita ingresar las credenciales una vez, mientras que en el último solo tiene el mismo combo de inicio de sesión y contraseña.

También IAM lograría en la medida de sus posibilidades los derechos de los usuarios. Por ejemplo, un equipo de red solo puede admitir un usuario / contraseña. Luego, la solución IAM abriría automáticamente un terminal e iniciaría sesión en el usuario, cuando él / ella lo solicite; asumiendo que el usuario está en el grupo de seguridad correcto.

La implementación de una solución IAM podría hacer mucho para facilitar la administración de sistemas.

No puedo recomendar ninguna solución en particular, solo tenga en cuenta que la transición del método actual a IAM requerirá más que la integración con un software diferente, pero también algún cambio en la cultura corporativa como un sistema unirá a todos los demás.

A muchas personas parece que les gusta OpenID para este tipo de cosas. Aunque no estoy seguro de sus capacidades de intranet.

Otra idea es usar tu " cerebro " sistema para pasar el nombre de usuario autenticado a las aplicaciones hermanas / hermanas como una publicación de formulario, luego manejar la autenticación en ese sistema y crear sus tickets de seguridad con lo que se envió.

¡Espero que encuentres lo que estás buscando!

¡Salud!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top