Tutorial: Creación de una aplicación de shell de .NET MAUI
Este tutorial es la segunda parte de una serie en la que se muestra cómo crear una aplicación shell de interfaz de usuario de .NET Multi-platform App UI (.NET MAUI) y prepararla para la autenticación mediante el Centro de administración de Microsoft Entra. En la parte 1 de esta serie, registró una aplicación y configuró los flujos de usuario en el inquilino externo. En este tutorial, agregará un asistente de cliente personalizado de la Biblioteca de autenticación de Microsoft (MSAL) para inicializar el SDK de MSAL, instalar las bibliotecas necesarias e incluir un recurso de imagen.
En este tutorial, hará lo siguiente:
- Crear una aplicación de shell de .NET MAUI
- Agregar compatibilidad con el SDK de MSAL mediante clases auxiliares de MSAL.
- Instalar los paquetes requeridos.
- Agregar un recurso de imagen.
Requisitos previos
- Tutorial: Registro y configuración de una aplicación móvil de .NET MAUI en un inquilino externo
- SDK de .NET 7.0
- Visual Studio 2022 con la carga de trabajo de MAUI instalada:
Crear una aplicación de shell de .NET MAUI
- En la ventana de inicio de Visual Studio 2022, seleccione Crear un nuevo proyecto.
- En la ventana Crear un proyecto, seleccione MAUI en la lista desplegable Todos los tipos de proyecto, seleccione la plantilla Aplicación de .NET MAUI y, luego, Siguiente.
- En la ventana Configurar el nuevo proyecto, Nombre del proyecto debe establecerse en SignInMaui. Actualice el Nombre de la solución para iniciar sesión en maui y seleccione Siguiente.
- En la ventana Información adicional, seleccione .NET 7.0 y, luego, Crear.
Espere a que se creen los proyectos y se restauren sus dependencias.
Agregar compatibilidad con el SDK de MSAL mediante clases auxiliares de MSAL
El cliente MSAL permite a los desarrolladores adquirir tokens de seguridad de un inquilino externo para autenticar y acceder a las API web protegidas. En esta sección, descargará los archivos que componen MSALClient.
Descargue los siguientes archivos en una carpeta del equipo:
- AzureAdConfig.cs: este archivo obtiene y establece los identificadores únicos de la aplicación de Microsoft Entra a partir del archivo de configuración de la aplicación.
- DownStreamApiConfig.cs: este archivo obtiene y establece los ámbitos de la llamada de Microsoft Graph.
- DownstreamApiHelper.cs: este archivo controla las excepciones que se producen al llamar a la API de bajada.
- Exception.cs: este archivo ofrece algunos métodos de extensión relacionados con la generación y control de excepciones.
- IdentityLogger.cs: este identificador de archivo muestra cómo usar el registro de MSAL.NET.
- MSALClientHelper.cs: este archivo contiene métodos para inicializar el SDK de MSAL.
- PlatformConfig.cs: este archivo contiene métodos para controlar una plataforma específica. Por ejemplo, Windows.
- PublicClientSingleton.cs: este archivo contiene una implementación singleton para encapsular MSALClient y las clases asociadas para admitir el modelo de inicialización estática para las plataformas.
- WindowsHelper.cs: este archivo contiene métodos para recuperar el identificador de ventana.
Importante
No omita la descarga de los archivos MSALClient, son necesarios para completar este tutorial.
Mover los archivos MSALClient con Visual Studio
- En el panel Explorador de soluciones, haga clic con el botón derecho en el proyecto SignInMaui y seleccione Agregar>Nueva carpeta. Asigne a la carpeta el nombre MSALClient.
- Haga clic con el botón derecho en la carpeta MSALClient y seleccione Agregar>Elemento existente....
- Vaya hasta la carpeta que contiene los archivos MSALClient que descargó anteriormente.
- Seleccione todos los archivos MSALClient que descargó y, a continuación, seleccione Agregar.
Instalación de los paquetes requeridos
Deberá instalar los siguientes paquetes:
- Microsoft.Identity.Client: este paquete contiene los archivos binarios de la Biblioteca de autenticación de Microsoft para .NET (MSAL.NET).
- Microsoft.Extensions.Configuration.Json: este paquete contiene la implementación del proveedor de configuración JSON para Microsoft.Extensions.Configuration.
- Microsoft.Extensions.Configuration.Binder: este paquete contiene funcionalidad para enlazar un objeto a datos de proveedores de configuración para Microsoft.Extensions.Configuration.
- Microsoft.Extensions.Configuration.Abstractions: este paquete contiene abstracciones de la configuración basada en pares clave-valor.
- Microsoft.Identity.Client.Extensions.Msal: este paquete contiene extensiones a la Biblioteca de autenticación de Microsoft para .NET (MSAL.NET).
Administrador de paquetes de NuGet
Para usar el Administrador de paquetes NuGet para instalar el paquete Microsoft.Identity.Client en Visual Studio, siga estos pasos:
- Seleccione Herramientas>Administrador de paquetes NuGet>Administrar paquetes NuGet para la solución... .
- En la pestaña Examinar, busque Microsoft.Identity.Client.
- Seleccione Microsoft.Identity.Client en la lista.
- Seleccione SignInMaui en el panel de lista Proyecto.
- Seleccione Instalar.
- Si se le pide que compruebe la instalación, seleccione Aceptar.
Repita el proceso para instalar los paquetes restantes necesarios.
Agregar un recurso de imagen
En esta sección, descargará una imagen que se usa en la aplicación para mejorar cómo interactúan los usuarios con ella.
Descargue la imagen siguiente:
- Icono: Microsoft Entra ID: esta imagen se usa como icono en la página principal.
Mover la imagen con Visual Studio
- En el panel de Visual Studio Explorador de soluciones, expanda la carpeta Recursos, que revela la carpeta Imágenes.
- Haga clic con el botón derecho en Imágenes y seleccione Agregar>Elemento existente....
- Navegue a la carpeta que contiene las imágenes descargadas.
- Cambie el filtro al filtro de tipo de archivo a Archivos de imagen.
- Seleccione la imagen que descargó.
- Seleccione Agregar.