From 62281f66cb1a573b063aef71704941e245fad94c Mon Sep 17 00:00:00 2001 From: Alejandro Rosales <1+alexrg@noreply.localhost> Date: Wed, 9 Sep 2026 17:32:17 +0000 Subject: [PATCH] Add wiki page: Arquitectura --- Arquitectura.md | 53 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Arquitectura.md diff --git a/Arquitectura.md b/Arquitectura.md new file mode 100644 index 0000000..c4675b3 --- /dev/null +++ b/Arquitectura.md @@ -0,0 +1,53 @@ +# Arquitectura + +## Flujo de autenticación + +1. LogonUI carga el Credential Provider de SGU. +2. El proveedor envía usuario y contraseña al Auth Broker mediante HTTPS y mTLS. +3. El broker abre una sesión NTLM contra SGU y consulta el módulo correspondiente + al tipo de usuario. +4. El perfil se normaliza y se sincroniza en Active Directory. +5. Windows recibe la identidad de dominio y completa el inicio de sesión con los + mecanismos estándar de Active Directory. + +La contraseña no se almacena en el cliente, el broker ni Active Directory como +texto recuperable. Solamente permanece en memoria durante la autenticación. + +## Clasificación de identidades + +| Prefijo | Rol | OU | Grupo administrado | +|---|---|---|---| +| `AL` | Alumno | `OU=Alumnos,OU=Usuarios-SGU` | `SGU-Alumnos` | +| `AD` | Administrativo | `OU=Administrativos,OU=Usuarios-SGU` | `SGU-Administrativos` | +| `DO` | Docente | `OU=Docentes,OU=Usuarios-SGU` | `SGU-Docentes` | + +Todas las cuentas sincronizadas pueden incorporarse al grupo dedicado de RDP +sin recibir privilegios de administrador local. + +## Enriquecimiento de perfiles + +Para administrativos y docentes, el domicilio se reconstruye a partir de los +PageMethods de SGU: + +- `GetDireccion`: valores guardados e identificadores actuales. +- `GetLocalidadListado`: catálogo que resuelve el municipio o localidad. +- `GetColoniasListado`: catálogo que resuelve la colonia y código postal. + +Este flujo evita guardar valores transitorios como `Seleccione...` que aparecen +mientras los controles web todavía están cargando. + +## Límites de confianza + +- Cliente ↔ broker: HTTPS con certificado cliente único y clave privada no + exportable. +- Broker ↔ SGU: sesión NTLM sobre HTTPS. +- Broker ↔ Active Directory: cuenta de servicio y permisos delegados sobre las + OU administradas. +- Cliente ↔ Active Directory: Kerberos, LDAP, DNS y políticas de dominio. + +El proveedor de contraseña de Microsoft permanece instalado como vía de +recuperación. SGU se asigna como proveedor predeterminado, pero no filtra ni +elimina los proveedores del sistema. + +Documentación ampliada en el repositorio: +[architecture.md](https://gitea.lci.ulsa.mx/alexrg/SGU-CredentialProvider/src/branch/main/docs/architecture.md).