Sistema de administración de usuarios

Administra los usuarios, perfiles de aplicaciones y la asignación de los perfiles a los usuarios.

Estructura

El sistema de seguridad, permite administrar perfiles de aplicaciones y la asignación de los perfiles a los usuarios. Puede delegar la administración de la autenticación de los usuarios en nuestro módulo y dedicar sus esfuerzos de desarrollos de aplicaciones en lo que realmente necesita.

Requisitos

Servidor
Windows 2016 Server o superior
SQL Server 2017 en adelante.
Framework
.net framework 4.8.
Memoria
4 GB en adelante.
Procesador
Intel Xeon de 3.0 Ghz como minimo.

Funcionalidades

El módulo permite definir las funcionalidades de múltiples aplicaciones.
El módulo permite definir múltiples perfiles a cada aplicación, con la segregación de funciones que se desee, a través de una matriz de operaciones por funcionalidad habilitado para cada perfil.
A cada usuario, se le define un perfil en cada aplicación definida. En los casos en que no se asigne un perfil, el usuario no tendrá acceso a esa aplicación.
Las siguientes son las características para el manejo de las claves:

La clave es almacenada como un hash (SHA512), de un valor derivado del código de usuario y la clave digitada. De esta manera no es reversible, ni puede ser copiada a otro usuario en la base de datos para ser maliciosamente utilizada.
A la clave se le pueden definir paramétricamente las siguientes características mínimas:

– Longitud mínima
– Longitud máxima
– Cantidad mínima de números en la clave
– Cantidad mínima de mayúsculas en la clave
– Cantidad mínima de minúsculas en la clave
– Cantidad mínima de caracteres especiales en la clave. Los caracteres especiales son: @!#$%&_-^{}()*+.,:;<>|°¬?¡¿[]
Se definen paramétricamente en días la caducidad de la clave.
La asignación de clave se realiza a través de un correo al usuario para que sea él directamente quien la asigne. Ese link tiene un vencimiento parametrizable en minutos.
El módulo permite definir bloqueos por fecha de inicio y fecha final de usuarios para escenarios de ausencias, vacaciones y afines.
El módulo define un proceso nocturno para el bloqueo automático de usuarios que no han tenido operaciones de autenticación en un tiempo paramétrico.
El módulo deja trazabilidad de las solicitudes de autenticación por parte de las aplicaciones.
A cada aplicación se le pueden definir diferentes operaciones sobre cada funcionalidad.
El módulo permite definir usuarios autenticados por el mismo módulo, o usuarios del directorio activo.
En la definición de perfiles se pueden definir qué operaciones requieren control dual y que perfil es el autorizador de ese control dual. Sin embargo, la implementación del control es responsabilidad de la aplicación como tal. El módulo permite definir qué operaciones debe la aplicación tener como control dual.
Se define el número de claves que el módulo recuerda para no permitir que un usuario asigne una clave reciente.
Se define paramétricamente en días la antelación con la que se advierte al usuario el próximo vencimiento de la clave.
El sistema posee un mecanismo de recordar clave para usuarios administrados por el módulo, a través del correo electrónico para que el usuario pueda asignar la clave ante un olvido.
El módulo deja trazabilidad de todas las operaciones de autenticación de usuarios manejados por el módulo.
El módulo permite definir atributos a los usuarios (manejados o del directorio activo), para que sean utilizados por las aplicaciones en el filtrado de operaciones e información. Estos atributos pueden ser oficina, regional, área, entre muchos otros. Y pueden ser valores digitados al momento de crear cada usuario o a través de una lista de selección a partir de una consulta a una tabla de una base de datos.
La comunicación entre las aplicaciones y el módulo de seguridad de usuarios se realiza a través de un Web Api y se autentica la aplicación a través de un id generado por el módulo de seguridad. Desde ese momento en adelante cada interacción interna entre la aplicación y el sistema de seguridad para validar permisos y atributos de los usuarios, es protegida a través de un token generado por el módulo de seguridad, para garantizar la autenticidad de las peticiones de las aplicaciones que realizan las operaciones.
El módulo permite definir las funcionalidades de múltiples aplicaciones.
A cada aplicación se le pueden definir diferentes operaciones sobre cada funcionalidad.
El módulo permite definir múltiples perfiles a cada aplicación, con la segregación de funciones que se desee, a través de una matriz de operaciones por funcionalidad habilitado para cada perfil.
El módulo permite definir usuarios autenticados por el mismo módulo, o usuarios del directorio activo.
A cada usuario, se le define un perfil en cada aplicación definida. En los casos en que no se asigne un perfil, el usuario no tendrá acceso a esa aplicación.
En la definición de perfiles se pueden definir qué operaciones requieren control dual y que perfil es el autorizador de ese control dual. Sin embargo, la implementación del control es responsabilidad de la aplicación como tal. El módulo permite definir qué operaciones debe la aplicación tener como control dual.
Las siguientes son las características para el manejo de las claves:

La clave es almacenada como un hash (SHA512), de un valor derivado del código de usuario y la clave digitada. De esta manera no es reversible, ni puede ser copiada a otro usuario en la base de datos para ser maliciosamente utilizada.
A la clave se le pueden definir paramétricamente las siguientes características mínimas:

– Longitud mínima
– Longitud máxima
– Cantidad mínima de números en la clave
– Cantidad mínima de mayúsculas en la clave
– Cantidad mínima de minúsculas en la clave
– Cantidad mínima de caracteres especiales en la clave. Los caracteres especiales son: @!#$%&_-^{}()*+.,:;<>|°¬?¡¿[]
Se define el número de claves que el módulo recuerda para no permitir que un usuario asigne una clave reciente.
Se definen paramétricamente en días la caducidad de la clave.
Se define paramétricamente en días la antelación con la que se advierte al usuario el próximo vencimiento de la clave.
La asignación de clave se realiza a través de un correo al usuario para que sea él directamente quien la asigne. Ese link tiene un vencimiento parametrizable en minutos.
El sistema posee un mecanismo de recordar clave para usuarios administrados por el módulo, a través del correo electrónico para que el usuario pueda asignar la clave ante un olvido.
El módulo permite definir bloqueos por fecha de inicio y fecha final de usuarios para escenarios de ausencias, vacaciones y afines.
El módulo deja trazabilidad de todas las operaciones de autenticación de usuarios manejados por el módulo.
El módulo define un proceso nocturno para el bloqueo automático de usuarios que no han tenido operaciones de autenticación en un tiempo paramétrico.
El módulo permite definir atributos a los usuarios (manejados o del directorio activo), para que sean utilizados por las aplicaciones en el filtrado de operaciones e información. Estos atributos pueden ser oficina, regional, área, entre muchos otros. Y pueden ser valores digitados al momento de crear cada usuario o a través de una lista de selección a partir de una consulta a una tabla de una base de datos.
El módulo deja trazabilidad de las solicitudes de autenticación por parte de las aplicaciones.
La comunicación entre las aplicaciones y el módulo de seguridad de usuarios se realiza a través de un Web Api y se autentica la aplicación a través de un id generado por el módulo de seguridad. Desde ese momento en adelante cada interacción interna entre la aplicación y el sistema de seguridad para validar permisos y atributos de los usuarios, es protegida a través de un token generado por el módulo de seguridad, para garantizar la autenticidad de las peticiones de las aplicaciones que realizan las operaciones.