Configuración para el IMAP con dominio de Office 365
Wiki – Configuración IMAP Office 365 con OAuth2
Objetivo
Este documento explica paso a paso cómo configurar una cuenta de correo Office 365 utilizando autenticación OAuth2 ( https://www.limilabs.com/blog/oauth2-client-credential-flow-office365-exchange-imap-pop3-smtp para conexiones IMAP dentro del sistema.
Requisitos Previos
Antes de iniciar, se debe contar con:
- Acceso administrador al portal de Microsoft 365 / Azure
- Correo electrónico a configurar
- Contraseña del correo
- Acceso al portal de Azure /
EntraEntrada ID - Permisos para registrar aplicaciones
- Acceso al sistema ERP
Información Necesaria
Durante la configuración se solicitarán los siguientes datos:
|
Dato |
Descripción |
|
|
Cuenta de correo a configurar |
|
Client ID |
Identificador de la aplicación |
|
Tenant ID |
Identificador del directorio |
|
Client Secret |
Clave secreta generada en Azure |
|
Servidor IMAP |
Servidor de correo entrante |
|
Puerto IMAP |
Puerto de conexión IMAP |
Antes de iniciar:
-
- Validar que el usuario tenga permisos suficientes.
- Confirmar acceso al portal de Azure.
- Verificar permisos dentro del sistema para modificar configuraciones.
Paso 1 –: Ingresar al Portal Azure
Ingresar al portal de Microsoft Azure y acceder con una cuenta con permisos administrativos.
Ingresar al portal de Microsoft Azure y acceder con una cuenta con permisos administrativos.
Paso 2 –: Registro de Aplicaciones
Ingresar a Microsoft Entra ID → Registro de aplicaciones y crear una nueva aplicación.
Paso 3 –: Obtener Client ID y Tenant ID
Desde la sección Información general copiar el Application ID y Directory ID.
Ruta
- Ingresar a:
- Microsoft Entra ID
- Luego:
- Registro de aplicaciones
- Presionar:
- Nuevo registro
Completar:
|
Campo |
Valor |
|
Nombre |
Nombre descriptivo de la integración |
|
Tipo de cuenta |
Solo esta organización |
Presionar:
- Registrar
-
- Nuevo secreto de cliente
Completar:
Campo
Valor
Descripción
Nombre descriptivo
Expiración
Según política del cliente
Presionar:
- Agregar
Importante
Copiar inmediatamente:
- Valor del secreto
⚠️ Este valor solo se muestra una vez.
Paso 4 –: Crear Client Secret
Ingresar a Certificados y secretossecretos, ypara de esta forma generar un nuevo secreto de cliente.
Después de registrar la aplicación:
- Ingresar a:
- Información general
- Copiar:
- Application (client) ID
Importante
Este valor corresponde al:
Client ID
Paso 5 –: Obtener el Tenant ID
En la misma pantalla:
- Copiar:
- Directory (tenant) ID
Importante
Este valor corresponde al:
- Tenant ID
Recomendación
Verificar cuidadosamente que pertenezca a la compañía correcta.
Un Tenant ID incorrecto provocará errores de autenticación.
1.
Paso 66: Validación de Configuración mediante PowerShell
2. Objetivo
3. Esta validación permite confirmar que la aplicación registrada en Microsoft 365 tiene los permisos y configuraciones correctas para utilizar IMAP con OAuth2.
5. Paso 1 – 1:Ejecutar Comandos en PowerShell
6. Abrir PowerShell con permisos administrativos y ejecutar los siguientes comandos:
Get-ServicePrincipal
Get-MailboxPermission -Identity "correo@dominio.com"
Ejemplo
Get-MailboxPermission -Identity "AdeleV@your-domain.onmicrosoft.com"
Asignación de Permisos al Mailbox mediante PowerShell
Objetivo
Este proceso permite otorgar permisos de acceso completo al buzón de correo para la aplicación o servicio configurado.
Comando PowerShell
Ejecutar el siguiente comando desde PowerShell:
Add-MailboxPermission `
-Identity "usuario@dominio.com" `
-User OBJECT_ID `
-AccessRights FullAccess
Add-MailboxPermission `
-Identity "usuario@dominio.com" `
-User OBJECT_ID `
-AccessRights FullAccess
¿Qué se debe validar?
ServiceId
Validar que el:
- ServiceId
sea exactamente igual al:
- Object ID
ubicado en:
- Enterprise Applications
⚠️ Importante:
No utilizar el Object ID del:
- App Registration
Debe utilizarse el valor mostrado en:
- Enterprise Application
AppId
Validar que el:
- AppId
sea igual al:
- Application ID
mostrado en:
- Enterprise Application
Validaciones Importantes
Validación del ServiceId
Verificar que el:
- ServiceId
sea exactamente igual al:
- Object ID
mostrado en:
- Enterprise Applications
⚠️ Importante:
No utilizar el valor del:
- App Registration
Debe utilizarse el Object ID mostrado específicamente en:
- Enterprise Application
Validación del AppId
Confirmar que el:
- AppId
sea igual al:
- Application ID
mostrado en:
- Enterprise Application
Validación de Conexión IMAP
Se recomienda validar la conexión utilizando flujo interactivo OAuth2.
Herramienta de referencia:
Herramienta IMAP OAuth2 Office365 - Limilabs
Esta validación confirma:
- Acceso IMAP habilitado
- OAuth2 funcionando correctamente
- Permisos correctos
- Acceso válido al buzón
Validación de Permisos API
Confirmar que:
- Los permisos API fueron agregados correctamente.
- Se otorgó:
- Admin Consent
⚠️ Aunque los permisos estén agregados, sin el consentimiento administrativo la autenticación puede fallar.
Errores Comunes
Client ID / Tenant ID / Secret Incorrectos
Uno de los errores más frecuentes ocurre por:
- Client ID incorrecto
- Tenant ID incorrecto
- Client Secret inválido
- Espacios adicionales al copiar información
Recomendación
Validar cuidadosamente:
- Que no existan espacios al inicio o final.
- Que el Tenant corresponda a la compañía correcta.
- Que el Secret siga vigente.
Tiempo de Aplicación de Cambios
⚠️ Importante:
Los cambios realizados en Azure / Entra ID pueden tardar entre:
- 20 y 30 minutos
en aplicarse completamente.
Durante este tiempo pueden aparecer:
- errores de autenticación,
- fallos de conexión,
- o permisos no reflejados.
Esto es un comportamiento normal de sincronización de Microsoft 365.
Nota importante sobre errores comunes:
Errores Comunes
• Tenant ID incorrecto.
• Client Secret expirado.
• Permisos API incompletos.
• Configuración realizada desde Aplicaciones Empresariales en lugar de Registro de aplicaciones.
• Correos que no procesan por falta de permisos.
|
Configuración |
Valor |
|
Servidor IMAP |
outlook.office365.com |
|
Puerto IMAP |
993 |
|
Seguridad |
SSL/TLS |
RecomendacionesRecomendaciones:
Guardar capturas de pantalla de la configuración y documentar los valores de Client ID, Tenant ID y Client Secret en un lugar seguro.




