Connettere un'app ASP.NET Core a Microsoft 365

Completato

In questa unità, viene illustrato come autenticare un'applicazione per connettersi a Microsoft Graph e accedere in modo sicuro ai dati da Microsoft 365.

Autenticazione per accedere ai dati da Microsoft 365

Microsoft Graph è un'API REST che mostra i dati e le informazioni archiviati in Microsoft 365. Le informazioni non sono disponibili pubblicamente. Per ottenere l'accesso, gli utenti devono dimostrare la propria identità, tramite l'autenticazione, e dare il consenso per permettere all'applicazione di accedere ai dati. Questo è il lavoro di Microsoft Entra ID.

L'applicazione deve ottenere un token di accesso da Microsoft Entra ID e includerlo in ogni richiesta a Microsoft Graph. Si può pensare al token di accesso come a un biglietto del cinema: l'applicazione usa il protocollo OAuth per ottenere un biglietto e presentandolo all'addetto (Microsoft Graph) ottiene l'accesso in sala per vedere il film (le risorse protette in Microsoft 365).

Dopo aver configurato l'identità, gli utenti possono accedere all'app usando l'account Microsoft 365 esistente. In questo modo non è necessario implementare l'autenticazione nell'app e gestire le credenziali degli utenti. Questo è utile anche per gli utenti, poiché non è necessario usare un'altra credenziale per accedere all'app. Inoltre, consente alle organizzazioni di controllare l'accesso dei dipendenti a diverse applicazioni, un requisito importante di questi tempi.

Diagramma che mostra il flusso di accesso per gli eventi in Microsoft Graph

Connessione a Microsoft 365 tramite SDK

Sia Microsoft Entra ID che Microsoft Graph sono servizi REST, quindi in teoria è possibile recuperare i messaggi di posta elettronica usando richieste HTTP dirette. Per semplificare l'operazione, Microsoft offre due kit di sviluppo software (SDK) che gestiscono automaticamente le richieste. Gli SDK si occupano della compilazione delle richieste e della gestione delle eccezioni, consentendo all'utente di concentrarsi sullo sviluppo dell'app.

Servizio SDK
Microsoft Entra ID Microsoft Authentication Library (MSAL)
Microsoft Graph Microsoft Graph SDK

MSAL gestisce i dettagli del protocollo OAuth con l'ID Microsoft Entra. Usando MSAL l'applicazione consentirà agli utenti di accedere con il proprio account Microsoft 365 e di fornire il consenso per le autorizzazioni necessarie per l'applicazione. Una volta eseguito l'accesso, MSAL fornirà il token di accesso necessario per comunicare con Microsoft Graph.

Per semplificare il processo di utilizzo di MSAL, le applicazioni ASP.NET Core possono sfruttare un assembly denominato Microsoft.Identity.Web. Questo assembly separa le funzionalità di MSAL e semplifica il processo generale di integrazione nelle applicazioni.

Passaggi successivi

Iniziamo eseguendo una semplice app connessa a Microsoft 365 che mostra il nome e il profilo dell'utente recuperati da Microsoft 365.