Usando una sola aplicación para usuario y administrador (con diferentes métodos de autenticación) vs separándolos en dos aplicaciones

6

Estoy creando una aplicación de gestión de recursos humanos que permite el acceso tanto del empleado como del administrador de recursos humanos. Ahora, me enfrento a un problema de mejores prácticas.

Definitivamente habría dos usuarios: Empleado y Administrador de Recursos Humanos. Solo me gustaría preguntar si será un riesgo para la seguridad poner al lado del administrador de recursos humanos y del lado del empleado en una sola aplicación y simplemente proporcionar diferentes conjuntos de páginas para el administrador y empleado de recursos humanos (lo que se determinará por el tipo de cuenta del cuenta registrada). ¿Se considera que es la mejor práctica o no plantea problemas / amenazas de seguridad? ¿O debería crear dos aplicaciones separadas (para el lado del empleado y el lado de la administración de recursos humanos)?

¡Gracias!

    
pregunta dagitab 25.01.2016 - 17:57
fuente

2 respuestas

5

Cualquiera de las opciones puede funcionar, si se hace correctamente . En general, preferiría usar la misma aplicación porque es más fácil de mantener, especialmente si las dos aplicaciones comparten muchos códigos comunes. Sin embargo, hay algunas consideraciones que podrían inclinar las escalas a favor de dos aplicaciones distintas, principalmente:

  1. Es más fácil bloquear una aplicación de recursos humanos por separado más que simplemente un rol de inicio de sesión. Por ejemplo, la aplicación Employee puede ser de acceso público a través de Internet, pero la aplicación HR puede estar bloqueada en la red interna, o incluso en las estaciones de trabajo de ciertos usuarios.
  2. Sería mucho más difícil imponer un inicio de sesión válido para la aplicación de Recursos Humanos sin tener acceso a ella.
  3. Con una sola aplicación, es posible que un desarrollador cometa un error y exponga accidentalmente la funcionalidad de administración a los usuarios normales. Esto obviamente no pasaría con aplicaciones separadas. (Esta es la razón por la que subrayé "si se hace correctamente" en la primera oración).
respondido por el TTT 25.01.2016 - 20:23
fuente
2

Definitivamente puedes usar una sola aplicación. Si bien puede ser un poco más complejo de implementar que dos aplicaciones separadas, usar una sola aplicación con múltiples niveles de acceso es una práctica común y aceptable.

La autenticación es importante para ambos enfoques, pero con una sola aplicación deberá asegurarse de que todas las funciones de administración estén protegidas. Verifique el nivel de acceso del usuario cada vez que realice una acción que solo los administradores deberían poder hacer. La ventaja de utilizar este enfoque es que no tendrá que reutilizar ningún código / página para la funcionalidad compartida, y solo tiene una aplicación para mantener / parche.

    
respondido por el Buffalo5ix 25.01.2016 - 19:25
fuente

Lea otras preguntas en las etiquetas