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

Completado

En este ejercicio, trabajará con una aplicación ASP.NET Core y la conectará a Microsoft 365. Usará un ensamblado de .NET Core denominado Microsoft.Identity.Web para permitir que los usuarios inicien sesión en la aplicación con su cuenta de Microsoft 365. Su nombre y su imagen de perfil se mostrarán usando el SDK de Microsoft Graph .NET Core

Configurar y ejecutar la aplicación

Este ejercicio facilita la creación de una aplicación web básica. Para obtener el código inicial de la aplicación que usará, vaya a https://github.com/microsoftdocs/mslearn-m365-microsoftgraph-dotnetcorerazor y elija una de las siguientes opciones:

  • Si usa Git, clone el proyecto mediante el comando git clone:

    git clone https://github.com/microsoftdocs/mslearn-m365-microsoftgraph-dotnetcorerazor.git
    
  • Si no usa Git, seleccione el botón Código seguido de Descargar ZIP. Extraiga el archivo *.zip en el equipo.

Una vez que tenga la aplicación inicial en el equipo, siga estos pasos para abrir la aplicación en el editor de código.

  1. Vaya a la carpeta con el código fuente de la aplicación y seleccione una de las siguientes opciones en función del editor de código.

    • Visual Studio (versión 16.11.0 de 2019 o posterior)

      Haga doble clic en MicrosoftGraph-DotNetCoreCilor.sln en la carpeta mslearn-m365-microsoftgraph-dotnetcore antimalwareor/Begin para abrir el proyecto.

    • Visual Studio Code u otro editor de código

      Abra la carpeta mslearn-m365-microsoftgraph-dotnetcorecoreor/Begin en el editor de código.

  2. En el editor de código, abra el archivo appsettings.json y dedique un momento a examinar algunas de las opciones.

  3. Cambie el valor de la propiedad Scopes a lo siguiente para permitir el acceso para leer el perfil y la presencia de un usuario, la configuración del buzón (para la información de zona horaria) y los calendarios.

    user.read presence.read mailboxsettings.read calendars.read
    
  4. Guarde appsettings.json antes de continuar.

  5. Para agregar los valores ClientId y ClientSecret de Microsoft Entra ID, usará los secretos de aplicación de ASP.NET Core.

  6. Abra una ventana de terminal en la raíz de la carpeta mslearn-m365-microsoftgraph-dotnetcore bytesor/Begin y ejecute los siguientes comandos, sustituyendo YOUR_APP_ID con la Id. de aplicación (cliente) del Azure Portal, y YOUR_APP_SECRET con el secreto de aplicación que creó.

    dotnet user-secrets init
    dotnet user-secrets set "AzureAd:ClientId" "YOUR_APP_ID"
    dotnet user-secrets set "AzureAd:ClientSecret" "YOUR_APP_SECRET"
    

    Importante

    En una aplicación de producción puede almacenar información confidencial en una ubicación segura, como Azure Key Vault.

  7. Este proyecto usa la siguiente plataforma de identidad de Microsoft y ensamblados de Microsoft Graph:

    • Microsoft.Identity.Web: se usa para solicitar y administrar tokens de acceso.
    • Microsoft.Identity.Web.UI: proporciona la interfaz de usuario para iniciar y cerrar sesión.
    • Microsoft.Identity.Web.MicrosoftGraph: proporciona la inserción de dependencias para el SDK de Microsoft Graph.
  8. Realice el siguiente paso en función del editor de código:

    • Visual Studio

      Pulse F5 para compilar y ejecutar el proyecto.

    • Visual Studio Code u otro editor de código

      Abra una ventana de terminal en la carpeta Begin y ejecute el siguiente comando:

      dotnet run
      

    Importante

    Si recibe una advertencia de que el certificado de localhost no es de confianza, vea Confiar en el certificado de desarrollo HTTPS de ASP.NET Core en Windows y macOS para obtener instrucciones sobre cómo usar el CLI de .NET Core para confiar en el certificado de desarrollo. Si está ejecutando en Visual Studio y aún no ha aprobado un certificado de desarrollador en el equipo, es posible que se le pida que apruebe un certificado.

  9. Abra un explorador y vaya a https://localhost:5001.

    Sugerencia

    Si en su trabajo diario usa Microsoft 365 y piensa hacer este ejercicio en un Inquilino de desarrollo ( lo cual es sugerido), puede resultarle útil trabajar en modo privado o "incógnito" en el explorador. Puede incluso optar por utilizar un explorador o un perfil de explorador diferente al que normalmente ha utilizado en producción.

  10. Inicie sesión con su cuenta de Microsoft 365.

  11. Después de iniciar sesión correctamente, se le pedirá que de su consentimiento para los permisos necesarios. Seleccione la casilla para dar su consentimiento a los permisos de su organización y luego seleccione el botón Aceptar.

  12. Debería ver que la aplicación que muestra un mensaje de bienvenida con su nombre de usuario y su imagen de perfil.

  13. Cierre el explorador y pulse Ctrl+C en la ventana del terminal para detener el servidor.

    Nota:

    Si ha abierto el proyecto en Visual Studio, puede cerrar el explorador o seleccionar Mayús+F5 en Visual Studio para detener el servidor. Cierre la ventana de terminal Visual Studio crea si sigue abierta.