La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
Questo documento descrive la configurazione di OAuth 2.0 in ISE per abilitare la comunicazione e-mail tramite i server SMTP Microsoft Exchange Online Mail.
Cisco raccomanda una conoscenza di base delle funzionalità del server Cisco Identity Services Engine (ISE) e Simple Mail Transfer Protocol (SMTP) e dell'autorizzazione OAuth.
ISE versione 3.5 P1 (3.2 Patch 8, 3.3 Patch 8, 3.4 Patch 4 supporta anche questa funzionalità)
Accesso a Microsoft EntraID e Microsoft 365 admin center
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
In questa sezione viene descritta la configurazione di Microsoft Entra ID e ISE per il supporto delle notifiche e-mail utilizzate per:
Nodi ISE per l'invio di e-mail
| Scopo dell'e-mail | Nodo che invia messaggi di posta elettronica |
| Scadenza accesso guest | PAN (Primary Policy Administration Node) |
| Allarmi | Nodo di monitoraggio e risoluzione dei problemi (PMnT) attivo |
| Notifiche su sponsor e ospiti dai portali guest e sponsor | PSN (Policy Service node) |
| Scadenza password | PAN principale |
Per utilizzare OAuth con ISE, sono necessari 3 passaggi:
1. Registrare l'applicazione ISE con Microsoft Entra ID
2. Ottenere un token di accesso dal server dei token (IDP)
3. Autentica le richieste di connessione al server SMTP con un token di accesso.

PASSAGGIO 1: Crea account di posta elettronica utente
Crea l'account di posta elettronica dell'utente nel dominio registrato dall'interfaccia di amministrazione di Microsoft 365. Qui viene creato un account di esempio con il nome utente "no-reply" per collegarsi all'applicazione EntraID e inviare e-mail da ISE.
Aggiungi utente

4. In Impostazioni facoltative, Assegna il ruolo utente (nessun accesso all'interfaccia di amministrazione)
5. Esaminare e fare clic su Fine aggiunta.
6. Scegli le app in cui questo account utente può accedere alla posta elettronica di Microsoft 365: Nell'interfaccia di amministrazione di Microsoft 365, selezionare Utenti > Utenti attivi > selezionare l'account utente e fare clic su Posta. In App e-mail > Gestisci le app e-mail. Accertarsi che Authenticated SMTP sia selezionato anche in altre app.
Gestisci app e-mail

PASSAGGIO 2: Registra l'applicazione ISE in Microsoft Entra ID
Registra un'applicazione
4. Viene visualizzata la pagina Panoramica dell'applicazione. Registrare l'ID applicazione (client) che identifica in modo univoco l'applicazione. Anche il tuo ID directory (tenant), da utilizzare nella configurazione ISE SMTP.
Dettagli registrazione app
5. Aggiungere ora le credenziali dell'applicazione a questa applicazione MS Entra per autenticarsi in modo sicuro e accedere all'API Web senza interazione dell'utente.
Configurazione segreto client applicazione
6. Le applicazioni sono autorizzate a chiamare le API quando ricevono autorizzazioni da utenti/amministratori. Aggiungere ora le autorizzazioni SMTP all'applicazione MS Entra.
Assegna autorizzazione API all'applicazione
Note: User.Read Permission for Microsoft Graph is added by default (No Admin consent for the tenant)
7. Le entità servizio in Exchange vengono utilizzate per consentire alle applicazioni di accedere alle cassette postali di Exchange tramite il flusso di credenziali client con i protocolli SMTP, POP e IMAP.
Dopo che l'amministratore tenant ha autorizzato l'applicazione Microsoft Entra, l'amministratore deve registrare l'entità del servizio dell'applicazione Entra in Exchange tramite Exchange Online PowerShell. Questa registrazione è abilitata dal cmdlet New-ServicePrincipal.
abc@abc-M-506L ~ % brew install --cask powershell
abc@abc-M-506L ~ % sh
sh-3.2$ brew update
sh-3.2$ brew upgrade powershell
Installa Powershell
II. Per utilizzare il cmdlet New-ServicePrincipal, installare ExchangeOnlineManagement e connettersi al tenant come mostrato nel frammento:
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
Connetti al tenant di Exchange Online
III. Registrazione di un'entità servizio dell'applicazione Microsoft Entra in Exchange. Usare AppID e ObjectID [OBJECT_ID è l'ID oggetto della pagina Panoramica del nodo Applicazione enterprise (portale di Azure) per la registrazione dell'applicazione. NON corrisponde all'ID oggetto nella pagina Panoramica del nodo Registrazioni applicazioni. L'utilizzo di un ID oggetto non corretto genera un errore di autenticazione].
PS/Users/abc> New-ServicePrincipal -AppId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxx6a953e -ObjectId b10axxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Registra entità servizio applicazione Entra in Exchange
IV. Verificare l'identificatore dell'entità servizio registrato utilizzando il cmdlet Get-ServicePrincipal
PS/Users/abc> Get-ServicePrincipal | fl
Verifica l'identificatore dell'entità servizio registrata
V. L'amministratore tenant può ora aggiungere le cassette postali specifiche nel tenant a cui l'applicazione può accedere. Questa configurazione viene eseguita con il cmdlet Add-MailboxPermission.
PS/Users/abc> Add-MailboxPermission -Identity "no-reply@abcdef.onmicrosoft.com" -User b10aa0dx-xxxx-xxxx-xxxx-xxxxxxe189bb -AccessRights FullAccess
Aggiungi autorizzazione cassetta postale per accedere all'applicazione
L'applicazione Microsoft Entra è ora in grado di accedere alle cassette postali consentite tramite i protocolli SMTP, POP o IMAP utilizzando il flusso di concessione delle credenziali del client OAuth 2.0.
PASSAGGIO 3: Configurazione dell'autenticazione utente SMTP ISE tramite OAuth di MS Exchange Online
Per configurare un server SMTP (Simple Mail Transfer Protocol), fare clic sull'icona Menu (
) e scegliere Amministrazione > Sistema > Impostazioni > Server SMTP. Configurare i campi.
Scegliere MS Exchange Online OAuth: Immettere questi valori per configurare Microsoft Exchange Online OAuth.
In base a questa configurazione vengono attivati allarmi di scadenza del segreto client.
La configurazione può essere salvata solo dopo il completamento dell'operazione Test connessione.

Test della connessione al server SMTP riuscito
Note: To protect sensitive customer data, these configurations are excluded from Backup and Restore operations
Per procedere alla verifica, configurare le impostazioni e-mail del guest. Passare a Centri di lavoro > Accesso guest > Impostazioni e-mail Guest. Selezionare l'opzione Abilita notifiche via e-mail agli ospiti e configurare l'indirizzo e-mail predefinito del mittente dell'account di mancata risposta configurato durante il passaggio 1 della configurazione e del salvataggio.
Modifica impostazioni posta elettronica guest
Inviare un messaggio di posta elettronica di prova passando a Centri di lavoro > Accesso guest > Portale e componenti > Portali guest > Portale guest con registrazione automatica (impostazione predefinita) > Personalizzazione pagina portale > Notifiche > Posta elettronica.
Nel riquadro di anteprima a destra, fare clic su Impostazioni > Invia messaggio di prova, Aggiungi il tuo ID e-mail e fare clic su Invia.
Prova l'email dal portale di autoregistrazione
Outlook deve ricevere un messaggio di posta elettronica dall'account senza risposta configurato nel passaggio 1 della verifica. E-mail di esempio nello screenshot.
Esempio di messaggio di posta elettronica ricevuto in 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.
Eseguire inoltre il test dal portale dello sponsor inviando di nuovo le credenziali dell'utente all'utente guest dall'amministratore dello sponsor.
Test dal portale degli sponsor
Invia credenziali all'utente GuestEsempio di messaggio di posta elettronica ricevuto dall'utente guest:
Notifica via e-mail all'utente guest
Iniziare con il controllo degli allarmi per la scadenza del segreto client. I nuovi allarmi relativi al segreto client SMTP OAuth vengono aggiunti in ISE.

Per ulteriori informazioni sulla risoluzione dei problemi, abilitare i registri di debug sul nodo PAN, PSN o PMnT in base al problema che si sta risolvendo.
Test del funzionamento della connessione
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.
Operazione di salvataggio
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. Errore GUI: Connessione a smtp.office365.con non riuscita.
Errore di timeout della connessione
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 indica il timeout della connessione. Per risolvere il problema, è necessario correggere la configurazione proxy.
2. Errore GUI: Endpoint OAuth o identificatore tenant non valido. Autoesplicativo. Controllare l'ID tenant.
3. Segreto client non valido - Uguale, è necessario verificare il valore del segreto client
Errore segreto client non valido
4. Indirizzo e-mail non valido. Assicurarsi che la configurazione del Service Premium sia corretta.
Errore indirizzo di posta elettronica non valido

5. Impossibile trovare un percorso di certificazione valido per la destinazione richiesta: Verificare che i certificati della catena di certificati Entra ID (Microsoft Azure RSA TLS Issuing CA e DigiCert Root CA ecc. in base al pcap) siano presenti nell'archivio certificati attendibile di ISE e che siano attendibili per il ruolo "Attendibilità per l'autenticazione all'interno di ISE e comunicazione client-server (infrastruttura)".
Verificare tutti i certificati inviati da EntraID utilizzando un pcap.
Errore di convalida del certificato
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

| Revisione | Data di pubblicazione | Commenti |
|---|---|---|
1.0 |
23-Feb-2026
|
Versione iniziale |
Feedback