Integre Microsoft. Identity.Web con ASP.NET Framework y .NET Standard

Microsoft. Identity.Web amplía la autenticación de Microsoft Entra ID a .NET Framework y .NET aplicaciones estándar. Este artículo le ayuda a elegir el paquete adecuado y el patrón de integración para su escenario.

Elección del escenario

Seleccione el patrón de integración que coincida con el tipo de aplicación. Microsoft Entra ofrece diferentes paquetes para aplicaciones web y servicios en segundo plano.

MSAL.NET con paquetes Microsoft.Identity.Web

Para aplicaciones de consola, servicios de demonio y aplicaciones .NET Framework no basadas en la web

Use Microsoft.Identity.Web.TokenCache y los paquetes Microsoft.Identity.Web.Certificate con MSAL.NET para:

  • Serialización de caché de tokens (SQL Server, Redis, Cosmos DB, PostgreSQL)
  • Carga de certificados desde KeyVault, almacén de certificados o sistema de archivos
  • Aplicaciones de consola y servicios de demonio
  • bibliotecas de .NET Standard 2.0

MSAL.NET con Microsoft. Identity.Web Guide


Integración de OWIN para ASP.NET MVC/API web

Para ASP.NET MVC y aplicaciones de API web

Utilice el paquete Microsoft.Identity.Web.OWIN para una autenticación web completa con:

  • TokenAcquirerFactory para la adquisición automática de tokens
  • Extensiones de controlador para acceso fácil a Microsoft Graph y sus API secundarias.
  • Compatibilidad con la caché de tokens distribuidos
  • Control de consentimiento incremental

Guía de integración de OWIN


Comparación de las opciones de integración

En la tabla siguiente se resumen las diferencias clave entre los dos enfoques de integración.

Feature MSAL.NET + TokenCache/Certificado Integración de OWIN
Paquete Microsoft. Identity.Web.TokenCache
Microsoft.Identity.Web.Certificate
Microsoft.Identity.Web.OWIN
Target Aplicaciones de consola, demonios, servicios de trabajo ASP.NET MVC, ASP.NET Web API
Autenticación Configuración manual de MSAL.NET Middleware OWIN automático
Adquisición de tokens Manual con IConfidentialClientApplication Automático con extensiones de controlador
Caché de tokens Todos los proveedores (SQL, Redis, Cosmos, PostgreSQL) Todos los proveedores (SQL, Redis, Cosmos, PostgreSQL)
Carga de certificados KeyVault, almacenar, file, Base64 Mediante la configuración de MSAL.NET
Microsoft Graph Configuración manual GraphServiceClient this.GetGraphServiceClient()
API de bajada Llamadas HTTP manuales con tokens this.GetDownstreamApi()
Consentimiento incremental Gestión manual de desafíos Automático con MsalUiRequiredException

Revisión de los paquetes disponibles

A partir de Microsoft. Identity.Web 1.17+, puede usar bibliotecas de Microsoft Identity en entornos que no son de ASP.NET Core. Los siguientes paquetes tienen como destino .NET Framework y .NET cargas de trabajo estándar.

Paquetes disponibles

Package propósito Aplicaciones objetivo
Microsoft. Identity.Web.TokenCache Serializadores de caché de tokens para MSAL.NET Consola, servicios de fondo, servicios de trabajo en segundo plano
Microsoft. Identity.Web.Certificate Utilidades de carga de certificados Consola, servicios de fondo, servicios de trabajo en segundo plano
Microsoft. Identity.Web.OWIN Integración de middleware de OWIN ASP.NET MVC, ASP.NET Web API

Descripción de las ventajas del paquete

Estos paquetes simplifican las tareas comunes de autenticación sin necesidad de ASP.NET Core.

Feature Ventajas
Serialización de caché de tokens Adaptadores de caché reutilizables para en memoria, SQL Server, Redis, Cosmos DB, PostgreSQL
Asistentes de Certificados Carga simplificada de certificados desde keyVault, sistema de archivos o almacenes de certificados
Integración de OWIN Autenticación sin problemas para ASP.NET MVC o API web
.NET Standard 2.0 Compatible con .NET Framework 4.7.2 y versiones posteriores, .NET Core y .NET 5+
Dependencias mínimas Paquetes de destino sin dependencias de ASP.NET Core

Exploración de aplicaciones de ejemplo

Use estos ejemplos como puntos de partida para su propia implementación.

ejemplos de MSAL.NET

Ejemplos de OWIN