# Detalles técnicos

### Descripción técnica

SecureAccess® se basa en un clúster de proxies inversos que se encuentra en la nube entre el tráfico de Internet no autenticado y los servidores que alojan los recursos finales (aplicaciones web corporativas). Obliga a los usuarios a autenticarse a través de SecureAccess® antes de que se establezca la comunicación con la aplicación web final. Sólo los usuarios legítimos y el tráfico son capaces de llegar al servidor y por lo tanto la superficie de ataque para esas aplicaciones se reduce drásticamente.

Se estructura en una arquitectura multicapa para una mayor modularización, flexibilidad y escalabilidad. El siguiente diagrama muestra los diferentes módulos que componen la arquitectura.

![](https://2664009794-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LkZaNJk9UaYLN2pSnak%2F-LkcsUadiYzgRX7Dg9Ye%2F-Lkcu06b0u_3hGF9ALE-%2Fimage.png?alt=media\&token=a8dde645-b7f4-4e2a-b920-79f2ecf9d50d)

El **Inicio de Sesión Unificado de varios pasos** protege las aplicaciones web ubicadas en la capa más externa (**Frontend**), el **panel de administración** y el **panel de usuario**. Estos tres componentes son accesibles desde Internet.&#x20;

El proceso de autenticación consiste en un conjunto de desafíos que el usuario debe resolver para verificar su identidad. Es configurable por el administrador en el panel de administración.&#x20;

El siguiente diagrama muestra cómo se ve un proceso de inicio de sesión seguro típico en SecureAccess®:

![](https://2664009794-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LkZaNJk9UaYLN2pSnak%2F-LkcsUadiYzgRX7Dg9Ye%2F-Lkctwe8z3ukstrx8_p6%2Fimage.png?alt=media\&token=a34b1dab-0be1-4f7d-a0f3-38565768f9f8)

Este proceso está diseñado para evitar proporcionar información sensible a usuarios malintencionados que intenten forzar su camino hacia la plataforma. Incluso cuando un usuario falla en uno de los desafíos (como el nombre de usuario o la contraseña) se le solicita el siguiente y al final la autenticación fallará, dejando atacante incapaz de saber qué elemento del proceso ha fallado.

La siguiente capa (**Backend**) es donde se ejecuta la lógica, y se almacenan los datos de la plataforma. Consta de diferentes módulos que se comunican entre sí para ofrecer todas las características disponibles:

* **Autenticación:** administra los esquemas de usuarios, grupos y permisos para conceder acceso a dominios y subdominios registrados.<br>
* **Doble Factor de Autenticación:** maneja los diferentes métodos de autenticación de doble factor (TOTP y notificaciones Push).<br>
* **Generación de Certificados SSL:** genera y gestiona la renovación de certificados a través de la integración con la plataforma Let´s Encrypt. <br>
* **Servicios de integración:** son responsables de la integración con los proveedores de autenticación externos para sincronizar usuarios y grupos.<br>
* **Motor de análisis de datos:** analiza los datos de los usuarios, incluidos los registros de tráfico y registros de autenticación.<br>
* **Almacenamiento:** guarda los datos de configuración y los logs de la plataforma.

La última capa (**Clúster de Proxies Inversos**) es el intermediario entre las aplicaciones web finales y los usuarios en Internet. Se trata de una infraestructura de autoescalado que aumenta y disminuye el número de instancias basándose en el uso actual de la plataforma y equilibra la carga de trabajo entre las instancias activas. Esta capa también contiene el **Firewall de Aplicaciones Web** (WAF) que sigue un conjunto de reglas configurables para permitir que las solicitudes reales pasen y bloqueen las solicitudes maliciosas de llegar a las aplicaciones web finales.&#x20;

SecureAccess® se ha desarrollado utilizando los estándares de programación más profesionales y los controles de seguridad más estrictos. La configuración segura y las pruebas exhaustivas de todas las áreas de la plataforma garantizan un rendimiento óptimo y garantizan la seguridad de los datos en todo momento.

Las principales tecnologías utilizadas para implementar SecureAccess® son:

![](https://2664009794-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LkZaNJk9UaYLN2pSnak%2F-LkcsUadiYzgRX7Dg9Ye%2F-LkctsFvCUWJJv3jk5EP%2Fimage.png?alt=media\&token=7bdf2f18-a73f-4a3e-aab2-7d16870a4604)

### Función técnica

Para proteger una aplicación web con SecureAccess®, los dominios/subdominios públicos de las aplicaciones web a proteger deben ser redirigidos al clúster de servidores proxy inversos (<https://my.secureaccess.com>). De esta manera, las solicitudes iniciadas por los usuarios llegarán a SecureAccess® y se iniciara el proceso de identificación del usuario y la verificación de sus permisos. Si el usuario se hubiera autenticado previamente, la plataforma redirigiría la solicitud a la aplicación web final y devolvería la respuesta al usuario.

Los usuarios no autenticados sin una sesión activa en SecureAccess®, serán redirigidos a la página de inicio de sesión para iniciar el proceso de autenticación. Una vez que el usuario haya completado todos los pasos de autenticación, será redirigido nuevamente a los servidores proxy inversos. Los proxies validarán la sesión activa y los permisos de acceso antes de dirigir al usuario a la aplicación web final. Si el usuario posee los permisos, las solicitudes llegarán a la aplicación web final, de lo contrario, la plataforma las bloqueará.

El siguiente diagrama detalla este proceso gráficamente:

![](https://2664009794-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LkZaNJk9UaYLN2pSnak%2F-LkcsUadiYzgRX7Dg9Ye%2F-Lkctp4NpTQI9LrNA2Ov%2Fimage.png?alt=media\&token=eaea5ab2-a1d4-468b-91ae-a74b51a0c63d)
