Matomo envía correo. Informes en PDF programados los lunes por la mañana, alertas cuando el tráfico se desploma, el restablecimiento de contraseña que un compañero necesita en un momento inoportuno. Todo eso sale por SMTP, configurado en Ajustes generales, con un nombre de servidor, un usuario y una contraseña guardados en el archivo de configuración.
En Microsoft 365, ese arreglo está llegando a su fin. La autenticación básica para el envío SMTP del cliente — usuario y contraseña transmitidos en cada conexión — se está retirando de Exchange Online por fases: Microsoft ya la desactiva por defecto en los inquilinos que no la utilizan, y prevé apagarla por defecto en todos los inquilinos restantes antes de que acabe 2026. El día en que eso ocurra en su inquilino, Matomo deja de enviar, y lo primero que notará es un informe que nunca llegó.
La solución a la que recurren la mayoría de los plugins es peor de lo que parece
La respuesta habitual es el OAuth delegado: conectar el plugin a una cuenta de Microsoft, aceptar una pantalla de consentimiento, y el plugin se queda con un token de actualización que le permite enviar en nombre de esa persona.
Funciona. Pero también mete a una persona dentro de su infraestructura. Esa cuenta necesita una licencia. Necesita una contraseña y MFA. Si la persona se marcha, si su contraseña cambia, o si el token de actualización expira — y los tokens de actualización expiran —, sus informes de analítica dejan de llegar sin avisar y nadie se entera hasta que alguien pregunta dónde están los datos. Ha sustituido una contraseña guardada por un token guardado que pertenece a un empleado, lo cual es un problema distinto, no uno resuelto.
Los permisos de aplicación eliminan por completo al humano
Missivus toma el otro camino que ofrece Microsoft. En lugar de actuar en nombre de una persona, se autentica como una aplicación.
Un registro de aplicación en Entra ID guarda un secreto de cliente o un certificado. Se le concede el permiso de aplicación Mail.Send — no el delegado — con consentimiento de administrador. Envía a un buzón compartido, que en Microsoft 365 no requiere ninguna licencia. No hay usuario, no hay inicio de sesión, no hay solicitud de MFA, no hay token de actualización, y no hay ninguna contraseña de buzón en ningún lugar de su instalación de Matomo ni de su base de datos. La credencial es un secreto de aplicación que usted rota según su propio calendario, y rotarlo consiste en pegar un valor nuevo en un único campo.
La parte que casi todo el mundo hace mal
Aquí está el detalle que importa, y la razón por la que este plugin existe en lugar de un fragmento de configuración.
Conceder Mail.Send como permiso de aplicación le da a esa aplicación la capacidad de enviar en nombre de todos los buzones de su inquilino. Por defecto. Eso no es un matiz menor — es una capacidad de envío a nombre de cualquiera, a escala de todo el inquilino, entregada a un service principal, y muchas guías paso a paso se detienen justo ahí y dan el asunto por zanjado.
La restricción es un paso aparte, en un lugar distinto, en otra herramienta de administración: una directiva de acceso de aplicaciones en Exchange Online — el nuevo RBAC for Applications de Microsoft cumple la misma función y es la dirección hacia la que Microsoft está orientando a los administradores —, aplicada mediante PowerShell, limitando esa aplicación a un único grupo de seguridad habilitado para correo que contenga solo el buzón que tiene permitido tocar. Hasta que la ejecuta, el alcance lo abarca todo. Después de ejecutarla, verifica con Test-ApplicationAccessPolicy y confirma que el acceso se deniega a un buzón que debería estar fuera de alcance — porque una restricción que no ha probado es una restricción que solo está dando por hecha.
Missivus incluye el PowerShell para este paso como parte de la instalación en lugar de dejarlo como ejercicio, y el plugin no considera completa una configuración sin él.
Lo que esto no hace
Es exclusivo de Microsoft 365. Si usa Google Workspace o su propio servidor de correo, esto no es para usted y el SMTP le sirve perfectamente.
Envía correo saliente y nada más. El permiso de aplicación es Mail.Send — la aplicación no puede leer ningún buzón, ni debería poder.
Y hace pasar el correo de su Matomo por la infraestructura de Microsoft, una empresa estadounidense que opera bajo alojamiento en la UE. Si esa es la respuesta equivocada para sus datos, también lo es aquí, y preferimos decirlo a dejarlo sin mencionar.
Cómo conseguirlo
Missivus for Matomo está disponible en Matomo Marketplace, con licencia GPLv3, gratis. La guía de configuración — registro de la aplicación, concesión del permiso, directiva de acceso, verificación — está en missivus.com/setup.
Si prefiere no tocar usted mismo Entra ID ni el PowerShell de Exchange, nosotros nos encargamos de la instalación y le entregamos una configuración funcionando. Esa es la parte de pago; el plugin nunca lo es.
Preguntas frecuentes
- ¿Esto funciona fuera de Microsoft 365?
- No. Es exclusivo de Microsoft 365; en Google Workspace o en un servidor de correo autoalojado, el SMTP sigue siendo la respuesta correcta.
- ¿La aplicación puede leer nuestro correo?
- No. El permiso concedido es únicamente `Mail.Send`. La aplicación puede enviar correo saliente y no puede leer ningún buzón.
- ¿Qué ocurre cuando expira el secreto de cliente?
- El envío se detiene hasta que se sustituye el secreto. Rotarlo consiste en pegar un valor nuevo en un único campo, y la fecha de caducidad la fija usted mismo al crear el secreto.