Conectar una aplicación ASP.NET Core a Microsoft 365

Completado

En esta unidad, aprenderá a autenticar una aplicación para conectarse a Microsoft Graph a fin de acceder de forma segura a los datos de Microsoft 365.

Autenticación para acceder a los datos de Microsoft 365

Microsoft Graph es una API de REST que expone los datos y la información almacenada en Microsoft 365. Esta información no está disponible públicamente. Para obtener acceso, los usuarios deben (a) demostrar su identidad (autenticación) y (b) dar su consentimiento para permitir que la aplicación acceda a sus datos. Este es el trabajo de Microsoft Entra ID.

La aplicación debe obtener un token de acceso de Microsoft Entra ID e incluirlo en cada solicitud a Microsoft Graph. Puede pensar en el token de acceso como un vale de película: la aplicación usa el protocolo OAuth para obtener un vale y, a continuación, presentarlo al operador (Microsoft Graph) para entrar a ver la película (los recursos protegidos en Microsoft 365).

Una vez configurada la identidad, los usuarios pueden iniciar sesión en la aplicación con su cuenta de Microsoft 365 existente. Esto evita tener que implementar la autenticación en la aplicación y mantener las credenciales de los usuarios. También beneficia a los usuarios al no tener que usar otra credencial para acceder a la aplicación. Además, permite a las organizaciones controlar el acceso de sus empleados a diferentes aplicaciones, lo que es un requisito importante en estos días.

Diagrama que muestra el flujo de acceso para los eventos de Microsoft Graph.

Conexión a Microsoft 365 mediante SDK

Tanto Microsoft Entra ID como Microsoft Graph son servicios REST, por lo que, en teoría, podría recuperar archivos mediante solicitudes HTTP directas. Sin embargo, para que sea más fácil, Microsoft ofrece dos kits de desarrollo de software (SDK) que controlan las solicitudes por usted. Estos SDK se encargan de crear solicitudes y controlar las excepciones, lo que le permite centrarse en la compilación de la aplicación.

Servicio SDK
Microsoft Entra ID Biblioteca de autenticación de Microsoft (MSAL)
Microsoft Graph Microsoft Graph SDK

MSAL controla los detalles del protocolo OAuth con el identificador de Microsoft Entra. Con MSAL, la aplicación permitirá a los usuarios iniciar sesión con su cuenta de Microsoft 365 y dar su consentimiento a los permisos que necesite la aplicación. Una vez que haya iniciado sesión, MSAL proporcionará el token de acceso que necesita para comunicarse con Microsoft Graph.

Para simplificar el proceso de trabajo con MSAL, las aplicaciones de ASP.NET Core pueden aprovechar un ensamblado denominado Microsoft.Identity.Web. Este ensamblado abstrae la funcionalidad de MSAL y simplifica el proceso general de integración en las aplicaciones.

Siguientes pasos

Comencemos por ejecutar una aplicación sencilla conectada a Microsoft 365 que muestra el nombre del usuario y su imagen de perfil recuperada de Microsoft 365.