El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe la configuración de OAuth 2.0 en ISE para habilitar la comunicación de correo electrónico a través de los servidores SMTP de correo de Microsoft Exchange Online.
Cisco recomienda tener conocimientos básicos de la funcionalidad del servidor Cisco Identity Services Engine (ISE) y del protocolo simple de transferencia de correo (SMTP), así como de la autorización de OAuth.
ISE versión 3.5 P1 (3.2 Parche 8, 3.3 Parche 8, 3.4 Parche 4 también admite esta funcionalidad)
Acceso a Microsoft EntraID y al centro de administración de Microsoft 365
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
En esta sección se describe la configuración de Microsoft Entry ID e ISE para admitir las notificaciones de correo electrónico utilizadas para:
Nodos de ISE que envían correos electrónicos
| Objetivo del correo electrónico | Nodo que envía correo electrónico |
| Expiración del acceso de invitado | Nodo de administración de políticas principal (PAN) |
| Alarmas | Nodo de supervisión y solución de problemas activo (PMnT) |
| Notificaciones de patrocinadores e invitados de portales de invitados y patrocinadores | Nodo de servicio de políticas (PSN) |
| Expiración de contraseña | PAN principal |
Para utilizar OAuth con ISE, se necesitan 3 pasos:
1. Registre la aplicación ISE con Microsoft Entry ID
2. Obtener un token de acceso desde el servidor de token (IDP)
3. Autentique las solicitudes de conexión al servidor SMTP con un token de acceso.

PASO 1: Crear cuenta de correo electrónico de usuario
Cree una cuenta de correo electrónico de usuario en su dominio registrado del centro de administración de Microsoft 365. Aquí se crea una cuenta de ejemplo con el nombre de usuario "no-reply" para conectar con la aplicación EntraID y enviar correos electrónicos desde ISE.
Agregar un usuario

4. En Optional Settings, asigne el rol User (sin acceso al centro de administración)
5. Revise y haga clic en Finalizar agregando.
6. Elija las aplicaciones en las que esta cuenta de usuario puede acceder al correo electrónico de Microsoft 365: En el centro de administración de Microsoft 365, vaya a Usuarios > Usuarios activos > seleccione la cuenta de usuario y haga clic en Correo. En Aplicaciones de correo electrónico > Administrar aplicaciones de correo electrónico. Asegúrese de que la opción SMTP autenticado también esté seleccionada junto con otras aplicaciones.
Administrar aplicaciones de correo electrónico

PASO 2: Registre la aplicación ISE en Microsoft Entry ID
Registrar una solicitud
4. Se muestra la página Visión General de la aplicación. Registre el Id. de aplicación (cliente), que identifica de forma única la aplicación. También su ID de directorio (arrendatario), que se utilizará en la configuración SMTP de ISE.
Detalles de registro de aplicaciones
5. Ahora agregue las credenciales de la aplicación a esta aplicación MS Entra para autenticarse de forma segura y acceder a la API web sin la interacción del usuario.
Configuración de Application Client Secret
6. Las aplicaciones están autorizadas a llamar a las API cuando los usuarios o administradores les conceden permisos. Ahora agregue permisos SMTP a la aplicación MS Entra.
Asignar permisos de API a la aplicación
Note: User.Read Permission for Microsoft Graph is added by default (No Admin consent for the tenant)
7. Las entidades de seguridad de servicio en Exchange se utilizan para permitir que las aplicaciones accedan a los buzones de Exchange a través del flujo de credenciales de cliente con los protocolos SMTP, POP e IMAP.
Una vez que el administrador de arrendatarios consiente la aplicación Microsoft Entra, el administrador debe registrar la entidad de seguridad del servicio de aplicación Entra en Exchange a través de Exchange Online PowerShell. El cmdlet New-ServicePrincipal habilita este registro.
abc@abc-M-506L ~ % brew install --cask powershell
abc@abc-M-506L ~ % sh
sh-3.2$ brew update
sh-3.2$ brew upgrade powershell
Instalar Powershell
II. Para utilizar el cmdlet New-ServicePrincipal, instale ExchangeOnlineManagement y conéctese al arrendatario como se muestra en el fragmento de código:
sh-3.2$ pwsh
PowerShell 7.5.4
PS/Users/abc> Install-Module -Name ExchangeOnlineManagement
PS/Users/abc> Import-module ExchangeOnlineManagement
PS/Users/abc> Connect-ExchangeOnline -Organization xxxxxxxx-xxxx-xxxx-xxxx-xxxxx999be76 ---->Directory (tenant) ID
Conectar con arrendatario de Exchange Online
III. Registro de una entidad de seguridad del servicio de aplicaciones Microsoft Entra en Exchange. Utilice AppID y ObjectID [OBJECT_ID es el ID de objeto de la página Descripción general del nodo Aplicación de empresa (Azure Portal) para el registro de la aplicación. Se trata de NOT el ID de objeto de la página Visión General del nodo Registros de aplicaciones. Si se utiliza el ID de objeto incorrecto, se producirá un error de autenticación].
PS/Users/abc> New-ServicePrincipal -AppId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxx6a953e -ObjectId b10axxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Registrar entidad de servicio de aplicaciones en Exchange
IV. Compruebe el identificador de entidad de seguridad de servicio registrado mediante el cmdlet Get-ServicePrincipal
PS/Users/abc> Get-ServicePrincipal | fl
Verificar identificador principal de servicio registrado
V. El administrador de arrendatarios ahora puede agregar los buzones de correo específicos en el arrendatario a los que se permitirá el acceso desde la aplicación. Esta configuración se realiza con el cmdlet Add-MailboxPermission.
PS/Users/abc> Add-MailboxPermission -Identity "no-reply@abcdef.onmicrosoft.com" -User b10aa0dx-xxxx-xxxx-xxxx-xxxxxxe189bb -AccessRights FullAccess
Agregar permiso de buzón para acceder a la aplicación
Su aplicación Microsoft Entra ahora puede acceder a los buzones de correo permitidos a través de los protocolos SMTP, POP o IMAP mediante el flujo de concesión de credenciales del cliente OAuth 2.0.
PASO 3: Configuración de la autenticación de usuario SMTP de ISE mediante MS Exchange Online OAuth
Para configurar un servidor de Protocolo simple de transferencia de correo (SMTP), haga clic en el icono Menú (
) y seleccione Administration > System > Settings > SMTP Server.Configure los campos.
Elija MS Exchange Online OAuth: Introduzca estos valores para configurar Microsoft Exchange Online OAuth.
Las alarmas de vencimiento de secretos de cliente se activan según esta configuración.
La configuración sólo se puede guardar después de una operación de conexión de prueba correcta.

La conexión con el servidor SMTP se probó correctamente
Note: To protect sensitive customer data, these configurations are excluded from Backup and Restore operations
Para verificarlo, configure la configuración de correo electrónico de invitado. Vaya a Centros de trabajo > Acceso de invitado > Configuración de correo electrónico de invitado. Seleccione Habilitar notificaciones de correo electrónico para invitados y configure la Dirección de correo electrónico predeterminada de origen de la cuenta sin respuesta configurada durante el paso 1 de configuración y Guardar.
Cambiar configuración de correo electrónico de invitado
Envíe un correo electrónico de prueba navegando hasta Centros de trabajo > Acceso de invitado > Portal y componentes > Portales de invitado > Portal de invitado autoregistrado (predeterminado) > Personalización de la página del portal > Notificaciones > Correo electrónico.
En el lado derecho del panel de vista previa, haga clic en Configuración > Enviar correo electrónico de prueba, Agregue su ID de correo electrónico y haga clic en Enviar.
Probar correo electrónico desde el portal de autorregistro
Su Outlook debe recibir un correo electrónico de la cuenta sin respuesta configurada en el paso 1 de la verificación. Correo electrónico de muestra en la captura de pantalla.
Correo electrónico de muestra recibido en Outlook
Guest.log at debug level:
2026-02-02 05:17:34,608 INFO [admin-http-pool139][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -::admin:::- sendMailMessage: Submitting Mail Job............
2026-02-02 05:17:34,608 INFO [admin-http-pool139][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -::admin:::- submitMailMsgJob: SMTP server FQDN ==> smtp.office365.com
2026-02-02 05:17:34,609 INFO [admin-http-pool139][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -::admin:::- sendMailMessage: Time taken for Submitting mail job is 1 Milli seconds.
2026-02-02 05:17:34,609 INFO [admin-http-pool139][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -::admin:::- sendMailMessage: Calling Future.get....
2026-02-02 05:17:34,609 INFO [GUEST_ACCESS_SMTP_RETRY_THREAD][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -:::::- submitMailMsgJob: Creating transport object...
2026-02-02 05:17:39,365 INFO [GUEST_ACCESS_SMTP_RETRY_THREAD][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -:::::- submitMailMsgJob: Time taken for transport.sendMessage() call is 4756 Milli Seconds.
2026-02-02 05:17:39,365 INFO [admin-http-pool139][[]] cpm.guestaccess.apiservices.util.SmtpMsgRetryThreadUtil -::admin:::- sendMailMessage: Future.get status: success Time taken for Future.get method call is 4756 Milliseconds.
Pruebe también desde el portal de patrocinadores reenviando las credenciales de usuario al usuario invitado por el administrador de patrocinadores.
Probar desde el portal del patrocinador
Enviar credenciales al usuario invitadoCorreo electrónico de muestra recibido por el usuario invitado:
Notificación por correo electrónico al usuario invitado
Comience comprobando las alarmas para el vencimiento de Client Secret. En ISE se agregan nuevas alarmas relacionadas con el secreto de cliente OAuth de SMTP.

Para solucionar más problemas, habilite los registros de depuración en los nodos PAN, PSN o PMnT según el problema que esté solucionando.
Probar operación de conexión
2026-02-02 05:58:21,501 DEBUG [MnT-AlarmWorkerMail-Threadpool-0][[]] cpm.guestaccess.apiservices.util.SmtpSession -:::::- SMTP settings : Username : null Port : 587 timeout : 60 isSSLEnabled: false isAuthEnabled false Server: smtp.office365.com
2026-02-02 05:58:21,501 DEBUG [MnT-AlarmWorkerMail-Threadpool-0][[]] cpm.guestaccess.apiservices.util.SmtpSession -:::::- Setting MailSessionProperties
2026-02-02 05:58:21,501 DEBUG [MnT-AlarmWorkerMail-Threadpool-0][[]] cpm.guestaccess.apiservices.util.SmtpSession -:::::- Set the FQDN : sa-ise35-1.poongarg.local
2026-02-02 05:58:21,513 DEBUG [MnT-AlarmWorkerMail-Threadpool-0][[]] cpm.guestaccess.apiservices.util.SmtpSession -:::::- SMTP settings : Username : null Port : 587 timeout : 60 isSSLEnabled: false isAuthEnabled false Server: smtp.office365.com
2026-02-02 05:58:21,513 DEBUG [MnT-AlarmWorkerMail-Threadpool-0][[]] cpm.guestaccess.apiservices.util.SmtpSession -:::::- Setting MailSessionProperties
2026-02-02 05:58:21,513 DEBUG [MnT-AlarmWorkerMail-Threadpool-0][[]] cpm.guestaccess.apiservices.util.SmtpSession -:::::- Set the FQDN : sa-ise35-1.poongarg.local
2026-02-02 05:59:14,872 DEBUG [admin-http-pool136][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- inside smtpServerSettings testConnection
2026-02-02 05:59:14,872 DEBUG [admin-http-pool136][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- smtpServerSecureSettings testConnection
2026-02-02 05:59:15,630 DEBUG [admin-http-pool136][[]] cpm.guestaccess.apiservices.oauth.OauthTokenCache -::admin:::- Putting value in OAuth Cache (accessToken, expiry) ..
2026-02-02 05:59:15,630 DEBUG [admin-http-pool136][[]] cpm.guestaccess.apiservices.oauth.ExchangeOnlineProvider -::admin:::- Access token acquired (no caching in this method)
2026-02-02 05:59:15,630 DEBUG [admin-http-pool136][[]] cpm.guestaccess.apiservices.oauth.OauthTokenCache -::admin:::- Putting value in OAuth Cache (accessToken, expiry) ..
2026-02-02 05:59:20,146 DEBUG [admin-http-pool136][[]] cpm.guestaccess.apiservices.util.SmtpSession -::admin:::- Successfully created mail session and connected to mail server.
2026-02-02 05:59:20,146 DEBUG [admin-http-pool136][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- Successfully connected to smtp.office365.com.
Guardar operación
2026-02-02 05:54:07,337 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- inside smtpServerSettings editSubmit
2026-02-02 05:54:07,337 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- smtpServerSettings in editSubmit
2026-02-02 05:54:07,339 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- Set SMTP Server is :smtp.office365.com
2026-02-02 05:54:07,339 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- Set SMTP port is :587
2026-02-02 05:54:07,339 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- Set Connection Timout is :60
2026-02-02 05:54:07,339 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- Set TLS/SSL config is :false
2026-02-02 05:54:07,339 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- Set Authentication config is :false
2026-02-02 05:54:07,357 DEBUG [admin-http-pool129][[]] cpm.admin.guestaccess.action.SmtpServerSettingsAction -::admin:::- SMTP server settings successfully saved
1. Error de GUI: Error en la conexión a smtp.office365.con.
Error de tiempo de espera de conexión agotado
2026-02-09 03:24:58,658 ERROR [admin-http-pool11][[]] cpm.guestaccess.apiservices.util.SmtpSession -::admin:::- MessagingException : com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp.office365.com, 587; timeout 60000;
nested exception is:
java.net.SocketTimeoutException: connect timed out
Guest.log muestra el tiempo de espera de conexión agotado. Es necesario corregir la configuración de proxy para resolver este problema.
2. Error de GUI: Identificador de arrendatario o punto final de OAuth no válido - Explicativo por sí mismo. Es necesario comprobar la ID de arrendatario.
3. Secreto de cliente no válido: igual, se debe verificar el valor secreto de cliente
Error de secreto de cliente no válido
4. Dirección de correo electrónico no válida. Asegúrese de que la configuración del principio de servicio es correcta.
Error de dirección de correo electrónico no válida

5. No se puede encontrar una ruta de certificación válida para el destino solicitado: Asegúrese de que los certificados de la cadena de certificados de Entra ID (CA emisora de RSA TLS de Microsoft Azure y CA raíz de DigiCert, etc., según la pcap) estén presentes en el almacén de certificados de confianza de ISE y de que se confíe en la función "Confianza para la autenticación en ISE y comunicación cliente-servidor (infraestructura)".
Verifique todos los certificados enviados por EntraID tomando un pcap.
Certificate Validation Failure
2026-02-10 14:32:47,528 ERROR [admin-http-pool9][[]] cpm.guestaccess.apiservices.util.SmtpSession -::admin:::- Exception : javax.mail.AuthenticationFailedException: failed to connect
2026-02-10 14:34:06,549 ERROR [admin-http-pool9][[]] cpm.guestaccess.apiservices.oauth.ExchangeOnlineProvider -::admin:::- Error acquiring token: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
2026-02-10 14:34:28,655 ERROR [admin-http-pool27][[]] cpm.guestaccess.apiservices.oauth.ExchangeOnlineProvider -::admin:::- Error acquiring token: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

| Revisión | Fecha de publicación | Comentarios |
|---|---|---|
1.0 |
23-Feb-2026
|
Versión inicial |
Comentarios