Tutorial: Preparación de una aplicación para la autenticación
Artículo
En el tutorial anterior, registró una aplicación web en el Centro de administración Microsoft Entra. En este tutorial se muestra cómo crear una aplicación web de ASP.NET Core mediante un IDE. También creará y cargará un certificado autofirmado en el Centro de administración Microsoft Entra para proteger la aplicación. Finalmente, configurará la aplicación para la autenticación.
En este tutorial, aprenderá a:
Cree una aplicación web ASP.NET Core
Crear un certificado autofirmado
Configure las opciones de la aplicación
Define la configuración y las direcciones URL de la plataforma
Abra Visual Studio y seleccione Crear un proyecto.
Busque la plantilla Aplicación web de ASP.NET Core, selecciónela y, luego, seleccione Siguiente.
Escriba un nombre para el proyecto, como NewWebAppLocal.
Elija una ubicación para el proyecto o acepte la opción predeterminada y, luego, seleccione Siguiente.
Acepte el valor predeterminado para el .NET Framework, tipo de autenticación y Configurar para HTTPS. El tipo de autenticación se puede establecer en Ninguno, ya que este tutorial trata este proceso.
Seleccione Crear.
Abra Visual Studio Code, seleccione Archivo > Abrir carpeta.... Navegue y seleccione la ubicación en la que se va a crear el proyecto.
Cree una carpeta con el icono Nueva carpeta... en el panel Explorador. Proporcione un nombre similar al registrado anteriormente, por ejemplo, NewWebAppLocal.
Abra una terminal nueva seleccionando Terminal > Crear terminal.
Para crear una plantilla de aplicación web de ASP.NET Core, ejecute los siguientes comandos en el terminal para cambiar al directorio y crear el proyecto:
PowerShell
cd NewWebAppLocal
dotnet new webapp
Abra Visual Studio y seleccione Nuevo.
En Web y Consola de la barra de navegación de la izquierda, seleccione Aplicación.
En ASP.NET Core, seleccione Aplicación web y asegúrese de que C# está seleccionado en el menú desplegable y, luego, seleccione Continuar.
Asegúrese de que la plataforma de destino está establecida en .NET 6.0 como mínimo.
Escriba un nombre para Nombre del proyecto, que se reflejará en el Nombre de la solución. Proporcione un nombre similar al registrado en el Centro de administración Microsoft Entra, como NewWebAppLocal.
Acepte la ubicación predeterminada del proyecto o elija otra ubicación y, luego, seleccione Crear.
Nota
Visual Studio para Mac está programado para su retirada antes del 31 de agosto de 31, 2024 de acuerdo con la directiva de ciclo de vida moderno de Microsoft. Visual Studio para Mac 17.6 seguirá siendo compatible hasta el 31 de agosto de 2024, con actualizaciones de mantenimiento para problemas de seguridad y plataformas actualizadas de Apple.
Consulte ¿Qué ocurre Visual Studio para Mac? para obtener más información.
Cree y cargue un certificado autofirmado
El uso de certificados es una manera sugerida de proteger la comunicación entre el cliente y el servidor. Para este tutorial, se creará un certificado autofirmado en el directorio del proyecto. Obtenga más información sobre los certificados autofirmados aquí.
Visual Studio para Mac está programado para su retirada antes del 31 de agosto de 31, 2024 de acuerdo con la directiva de ciclo de vida moderno de Microsoft. Visual Studio para Mac 17.6 seguirá siendo compatible hasta el 31 de agosto de 2024, con actualizaciones de mantenimiento para problemas de seguridad y plataformas actualizadas de Apple.
Consulte ¿Qué ocurre Visual Studio para Mac? para obtener más información.
Descarga del certificado al Centro de administración Microsoft Entra
Para que el certificado esté disponible para la aplicación, debe cargarse en el inquilino.
A partir de la página Información general de la aplicación creada anteriormente, en Administrar, seleccione Certificados y secretos y seleccione la pestaña Certificados (0).
Seleccione Cargar certificado.
Seleccione el icono Carpeta y busque y seleccione el certificado que se creó anteriormente.
Escriba una descripción para el certificado y seleccione Agregar.
Registre el valor Huella digital, que se usará en el paso siguiente.
Configuración de la aplicación para la autenticación y la referencia de API
Los valores registrados anteriormente se usarán para configurar la aplicación para la autenticación. El archivo de configuración, appsettings.json, se utiliza para almacenar la configuración de la aplicación usada durante el tiempo de ejecución. Como la aplicación también llamará a una API web, también debe contener una referencia a ella.
En el IDE, abra appsettings.json y reemplace el contenido del archivo por el siguiente fragmento de código. Reemplace el texto entre comillas por los valores que se registraron anteriormente.
JSON
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center",
"ClientId": "Enter the client ID obtained from the Microsoft Entra admin center",
"ClientCertificates": [
{
"SourceType": "StoreWithThumbprint",
"CertificateStorePath": "CurrentUser/My",
"CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center"
}
],
"CallbackPath": "/signin-oidc"
},
"DownstreamApi": {
"BaseUrl": "https://graph.microsoft.com/v1.0/",
"RelativePath": "me",
"Scopes": [
"user.read"
]
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}
Instance - El punto de conexión de autenticación. Consulte los diferentes puntos de conexión disponibles en nubes nacionales.
TenantId - El identificador del inquilino donde se registra la aplicación. Reemplace el texto entre comillas por el valor de identificador del directorio (inquilino) que se registró anteriormente en la página de información general de la aplicación registrada.
ClientId - El identificador de la aplicación, también denominado cliente. Reemplace el texto entre comillas por el valor de identificador del directorio (inquilino) que se registró anteriormente en la página de información general de la aplicación registrada.
ClientCertificates - Se usa un certificado autofirmado para la autenticación en la aplicación. Reemplace el texto de CertificateThumbprint por la huella digital del certificado que se registró anteriormente.
CallbackPath - Es un identificador para ayudar al servidor a redirigir una respuesta a la aplicación adecuada.
DownstreamApi - Es un identificador que define un punto de conexión para acceder a Microsoft Graph. El URI de la aplicación se combina con el ámbito especificado. Para definir la configuración de una aplicación propiedad de la organización, el valor del Scopes atributo es ligeramente diferente.
Guarde los cambios realizados en el archivo.
En la carpeta Propiedades, abra el archivo launchSettings.json.
Busque y registre el https valor applicationURI en launchSettings.json, por ejemplo https://localhost:{port}. Esta dirección URL se usará al definir el URI de redirección. No use el valor http.
Adición de un URI de redireccionamiento de la plataforma
En Centro de administración Microsoft Entra, en Administrar, seleccione Registros de aplicaciones y, a continuación, seleccione la aplicación que se creó anteriormente.
En el menú izquierdo, en Administrar, seleccione Autenticación.
En Configuraciones de plataforma, seleccione Agregar una plataforma y, a continuación, seleccione Web.
En URI de redirección, escriba el applicationURL y el CallbackPath, /signin-oidc, en forma de https://localhost:{port}/signin-oidc.
En Dirección URL de cierre de sesión del canal frontal, escriba la siguiente dirección URL para cerrar sesión, https://localhost:{port}/signout-oidc.
Descubra cómo Id. externa de Microsoft Entra puede proporcionar experiencias de inicio de sesión seguras y sin problemas para los consumidores y clientes empresariales. Explore la creación de inquilinos, el registro de aplicaciones, la personalización de flujo y la seguridad de la cuenta.
Muestre las características de Microsoft Entra ID para modernizar las soluciones de identidad, implementar soluciones híbridas e implementar la gobernanza de identidades.
Obtén información sobre cómo llamar a la API web de Microsoft Graph, iniciar sesión y mostrar la información de perfil del usuario que ha iniciado sesión
Obtenga más información sobre cómo registrar una aplicación web con la plataforma de identidad de Microsoft creando una aplicación en el centro de administración de Microsoft Entra.
Obtenga información sobre cómo instalar paquetes de identidad y componentes de inicio de sesión en una aplicación ASP.NET Core y habilitar la autenticación de usuario.
Obtenga información sobre cómo una aplicación web de ASP.NET Core usa Microsoft.Identity.Web para implementar el inicio de sesión de Microsoft mediante OpenID Connect y llamar a Microsoft Graph
Descubra temas relacionados con la autenticación con la plataforma de identidad de Microsoft Microsoft Entra ID para aplicaciones web y API en ASP.NET Core.
Obtenga información sobre cómo iniciar sesión de usuarios y acceder a las API web en aplicaciones web basadas en servidores con nuestros inicios rápidos, tutoriales y guías paso a paso detalladas.
En este inicio rápido, aprenderá a llamar a una API web de ASP.NET protegida por la plataforma de identidad de Microsoft desde una aplicación de escritorio de Windows (WPF).