Overzicht van Microsoft Identity Web

Microsoft. Identity.Web is een set bibliotheken die het toevoegen van verificatie en autorisatie vereenvoudigt voor toepassingen die zijn geïntegreerd met de Microsoft identity platform, waaronder Microsoft Entra ID. Het biedt ondersteuning voor:

  • .NET Aspire gedistribueerde toepassingen
  • ASP.NET Core webtoepassingen en web-API's
  • OWIN-toepassingen in .NET Framework
  • .NET daemon-toepassingen en achtergrondservices

Of u nu web-apps bouwt waarmee gebruikers worden aangemeld, web-API's die tokens valideren of achtergrondservices die beveiligde API's aanroepen, Microsoft. Identity.Web verwerkt de verificatiecomplexiteit voor u.

Waarom Microsoft Identity Web gebruiken?

Microsoft. Identity.Web vermindert standaardcode en biedt ingebouwde aanbevolen procedures voor algemene identiteitsscenario's. Tot de belangrijkste mogelijkheden behoren:

  • Vereenvoudigde verificatie : minimale configuratie voor het aanmelden van gebruikers en het valideren van tokens
  • Downstream-API-aanroepen - Microsoft Graph, Azure-SDK's of uw eigen beveiligde API's aanroepen met automatisch tokenbeheer
    • Tokenovername : tokens verkrijgen namens gebruikers of uw toepassing
    • Tokencachebeheer - Ondersteuning voor gedistribueerde cache met Redis, SQL Server, Cosmos DB en PostgreSQL
  • Meerdere referentietypen : ondersteuning voor certificaten, beheerde identiteiten en certificaatloze verificatie
  • Automatische autorisatieheaders - Verificatie wordt transparant verwerkt bij het aanroepen van API's

Zie NuGet-pakketten voor een overzicht van alle beschikbare pakketten en wanneer u ze wilt gebruiken.

API's aanroepen met automatische verificatie

U kunt beveiligde API's aanroepen zonder tokens handmatig te beheren. Microsoft. Identity.Web ondersteunt de volgende integratiepatronen:

  • Microsoft Graph - Gebruik GraphServiceClient met automatische tokenverwerving
  • Azure-SDK's - Gebruik TokenCredential-implementaties die kunnen worden geïntegreerd met Microsoft. Identity.Web
  • Uw eigen API's : gebruiken IDownstreamApi of IAuthorizationHeaderProvider voor naadloze API-aanroepen
  • Agentidentiteiten : API's aanroepen namens beheerde identiteiten of service-principals met automatische verwerking van referenties

Verificatieheaders worden automatisch toegevoegd aan uw aanvragen en tokens worden op transparante wijze verkregen en in de cache opgeslagen. Zie de handleiding voor het aanroepen van downstream-API's, Daemon-toepassingen en agentidentiteiten voor meer informatie.

Configuratiemethoden

U kunt Microsoft.Identity.Web configureren via instellingenbestanden of programmatisch. Beide benaderingen ondersteunen alle verificatiescenario's.

Verificatie configureren in appsettings.json:

{
  "AzureAd": {
    "Instance": "https://login.microsoftonline.com/",
    "TenantId": "your-tenant-id",
    "ClientId": "your-client-id"
  }
}

Belangrijk

Voor daemon-apps en consoletoepassingen moet u ervoor zorgen dat uw appsettings.json bestand wordt gekopieerd naar de uitvoermap. Stel in Visual Studio de eigenschap Copiëren naar uitvoermap in op Copiëren als nieuwer of Altijd kopiëren, of voeg het volgende toe aan uw .csproj:

<ItemGroup>
  <None Update="appsettings.json">
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
  </None>
</ItemGroup>

Configuratie via code

U kunt ook verificatie rechtstreeks configureren in de opstartcode van uw toepassing:

builder.Services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
    .AddMicrosoftIdentityWebApp(options =>
    {
        options.Instance = "https://login.microsoftonline.com/";
        options.TenantId = "your-tenant-id";
        options.ClientId = "your-client-id";
    });

Volgende stappen 

Kies het scenario dat overeenkomt met uw toepassing: