Login con Microsoft en grupos de seguridad
Los grupos de seguridad protegen formularios y dashboards con un login compartido. Además de usuario/contraseña y OTP, un grupo puede aceptar inicio de sesión con Microsoft (Entra ID / Azure AD): el usuario final entra con su cuenta Microsoft y Floogos valida su identidad contra una lista de permitidos del grupo.
Cómo funciona
Sección titulada «Cómo funciona»- El usuario abre un formulario o dashboard protegido y elige Iniciar sesión con Microsoft.
- Se autentica en Microsoft.
- Floogos recibe su email y su directorio (tenant), y los valida contra la configuración del grupo.
- Si pasa, se crea una sesión compartida válida para todos los formularios y dashboards de ese grupo.
Hay un único punto de retorno para todos los grupos, así que solo se registra una URL en Azure aunque tengas muchos grupos.
Requisitos
Sección titulada «Requisitos»- Un directorio de Microsoft Entra ID donde registrar la app (permiso para crear registraciones).
- Ser administrador de la organización en Floogos, para cargar las credenciales desde Organización → Seguridad (paso siguiente).
Paso 1 — Registrar la app en Azure / Entra ID
Sección titulada «Paso 1 — Registrar la app en Azure / Entra ID»- Azure Portal → Microsoft Entra ID → App registrations → New registration.
- Nombre: por ejemplo
Floogos – Login de formularios. - Tipos de cuenta admitidos:
- Un solo directorio (solo tu organización), o
- Cualquier directorio / cuentas Microsoft si vas a permitir cuentas externas (luego se filtran por lista de permitidos).
- URI de redirección (tipo Web), exactamente:
https://TU_DOMINIO/f/realm/oauth/microsoft/callback
- Registrar y copiar el Application (client) ID y el Directory (tenant) ID.
- En Certificates & secrets → New client secret, copiar el Value al momento de crearlo (después no se muestra).
- Permisos: alcanza con los de identidad básica (
openid,profile,email); no requiere consentimiento de administrador.
Paso 2 — Cargar las credenciales en Floogos
Sección titulada «Paso 2 — Cargar las credenciales en Floogos»Se hace desde la propia aplicación, sin tocar el servidor ni pedir nada a soporte. Vale igual en Floogos Cloud y en on-premise.
En Organización → Seguridad, crea o edita un grupo y marca el método Cuenta Microsoft (OAuth2). Debajo aparece el bloque Config Microsoft:
- Copia la URI de redirección que muestra el aviso azul y date de alta exactamente esa en Azure (paso 1). Es el valor que más se falla.
- Pega el Application (client) ID.
- Pega el Client secret — el Value, no el Secret ID.
- Guardar aplicación.
La aplicación se registra una vez por organización, no por grupo: lo que cambia de un grupo a otro es el tenant y los dominios permitidos, no la app.
Si la organización todavía no tiene su aplicación registrada, el propio modal lo avisa y la opción de Microsoft no aparece en el login (los demás métodos siguen funcionando).
Qué pasa con las variables de entorno
Sección titulada «Qué pasa con las variables de entorno»Antes estas credenciales vivían en el servidor (MS_FORM_CLIENT_ID y
MS_FORM_CLIENT_SECRET), lo que obligaba a editar la configuración y reiniciar.
Siguen funcionando como respaldo: si una instalación ya las tenía definidas,
no hay que cambiar nada. En cuanto una organización guarda su propia aplicación
desde el modal, la suya tiene prioridad.
El modal indica cuál se está usando: si son las del servidor, lo dice y explica que rellenar los campos hará que la organización pase a usar la propia.
Dos variables siguen siendo del servidor:
| Variable | Para qué |
|---|---|
FORM_AUTH_SECRET | Firma las sesiones y el estado del OAuth |
CONFIG_ENC_KEY | Cifra el Client secret en la base de datos |
Paso 3 — Activar Microsoft en el grupo
Sección titulada «Paso 3 — Activar Microsoft en el grupo»En Organización → Seguridad, edita el grupo:
- Habilita el método Microsoft.
- Elige el modo:
| Modo | Quién puede entrar | Lista de permitidos |
|---|---|---|
| Un directorio (single) | Solo el directorio (tenant) que indiques | Opcional (si la agregas, restringe aún más) |
| Cualquier cuenta (multi) | Cualquier cuenta Microsoft, filtrada por la lista | Obligatoria — sin lista no entra nadie |
- Completa la lista de permitidos por email o por dominio (por ejemplo
empresa.com). Un usuario entra si su email está en la lista o su dominio coincide.
Resolución de problemas
Sección titulada «Resolución de problemas»| Mensaje | Causa | Solución |
|---|---|---|
redirect_uri_mismatch (pantalla de Microsoft) | La URL de redirección no coincide con Azure | Copiar la URI que muestra el modal y darla de alta idéntica en Azure (esquema, dominio, ruta, sin / final de más). |
invalid_state | El estado expiró o el secreto difiere entre servidores | Reintentar; verificar que FORM_AUTH_SECRET sea el mismo en todas las instancias. |
no_allowlist | Modo cualquier cuenta sin lista | Agregar emails o dominios permitidos al grupo. |
not_allowed | El email/dominio no está permitido | Agregarlo a la lista del grupo. |
no_email | Microsoft no devolvió email | Asegurar el permiso email y que la cuenta tenga correo. |
| No aparece el botón de Microsoft | La organización no tiene registrada su aplicación | Cargar el Application ID y el Client secret en Organización → Seguridad. |
AADSTS7000215 | Client secret vencido o incorrecto | Regenerar el secret en Azure y pegar el nuevo Value en el modal. Los secretos de Azure caducan. |
No puedo guardar: falta CONFIG_ENC_KEY | El servidor no puede cifrar el secreto | Definirla en el servidor. Floogos no guarda secretos sin cifrar. |
- El client secret de Azure vence — anota la fecha y rótalo antes del vencimiento.
- En despliegues con varios servidores, todos deben compartir el mismo
FORM_AUTH_SECRETy la mismaCONFIG_ENC_KEY. Las credenciales de Microsoft viven en la base de datos, así que se comparten solas.