Delen via


Zelfstudie: Een ASP.NET Core-web-app instellen waarmee gebruikers worden geverifieerd

Van toepassing op: groene cirkel met een wit vinkje. Workforce-tenants Groene cirkel met een wit vinkje. Externe tenants (meer informatie)

In deze zelfstudie maakt u een ASP.NET Core-web-app en configureert u deze voor verificatie. Dit is deel 1 van een reeks die laat zien hoe u een ASP.NET Core-webtoepassing bouwt en deze voorbereidt op verificatie met behulp van het Microsoft Entra-beheercentrum. Deze toepassing kan worden gebruikt voor werknemers in een personeelstenant of voor klanten die een externe tenant gebruiken

In deze handleiding:

  • Een ASP.NET Core-web-app maken
  • Een zelfondertekend certificaat maken
  • De instellingen voor de toepassing configureren
  • Platforminstellingen en -URL's definiëren

Voorwaarden

  • Een Azure-account met een actief abonnement. Maak gratis een account. Dit account moet machtigingen hebben voor het beheren van toepassingen. Gebruik een van de volgende rollen die nodig zijn om de toepassing te registreren:
    • Toepassingsbeheerder
    • Toepassingsontwikkelaar
    • Cloudtoepassingsbeheerder
  • Hoewel elke IDE (Integrated Development Environment) die ondersteuning biedt voor ASP.NET Core-toepassingen kan worden gebruikt, maakt deze zelfstudie gebruik van Visual Studio Code. U kunt het hierdownloaden.
  • Een minimaal vereiste is .NET 8.0 SDK.
  • Een personeelstenant. U kunt uw Default Directory gebruiken of een nieuwe tenant instellen.
  • Een toepassing die is geregistreerd in het Microsoft Entra-beheercentrum. Gebruik de volgende installatie voor de doeleinden van deze reeks zelfstudies:
    • naam: identity-client-web-app
    • Ondersteunde accounttypen: alleen accounts in deze organisatiemap
    • Doorverwijs-URI: https://localhost:5001/signin-oidc
    • afmeldings-URL van frontkanaal: https://localhost:5001/signout-oidc
  • Voor ontwikkelingsdoeleinden een zelfondertekend certificaat aanmaken. Raadpleeg om referenties toe te voegen om het certificaat te uploaden en de vingerafdruk van het certificaat te registreren. Gebruik geen zelfondertekend certificaat voor productie-apps. Gebruik een vertrouwde certificeringsinstantie.

Een ASP.NET Core-project maken

In deze sectie maakt u een ASP.NET Core-project in Visual Studio Code.

  1. Open Visual Studio Code, selecteer Bestand > Map openen.... Navigeer naar en selecteer de locatie waar u uw project wilt maken.

  2. Open een nieuwe terminal door Terminal > New Terminalte selecteren.

  3. Voer de volgende opdracht in om een MVC-project (Model View Controller) te maken ASP.NET Core.

    dotnet new mvc -n identity-client-web-app
    

Identiteitspakketten installeren

Deze toepassing maakt gebruik van Microsoft.Identity.Web en het bijbehorende NuGet-pakket moet zijn geïnstalleerd.

Gebruik het volgende codefragment om te veranderen in de nieuwe map identity-client-web-app en installeer het relevante NuGet-pakket:

dotnet add package Microsoft.Identity.Web.UI

De toepassing configureren voor verificatie

De waarden die zijn vastgelegd in de installatie van uw toepassing, worden gebruikt om de toepassing te configureren voor verificatie. Het configuratiebestand, appsettings.json, wordt gebruikt voor het opslaan van toepassingsinstellingen die tijdens de runtime worden gebruikt.

Het configuratiebestand bijwerken

Open in uw IDE appsettings.json en vervang de bestandsinhoud door het volgende codefragment. Vervang de tekst tussen aanhalingstekens door de waarden die eerder zijn vastgelegd.

{
  "AzureAd": {
    "Instance": "https://login.microsoftonline.com/",
    "TenantId": "Enter_the_Tenant_Id_Here",
    "ClientId": "Enter_the_Application_Id_Here",
    "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 : het verificatie-eindpunt. Controleer de verschillende beschikbare eindpunten in Nationale clouds.
  • TenantId: de id van de tenant waar de toepassing is geregistreerd. Vervang de tekst tussen aanhalingstekens door de Directory-id (tenant) waarde die eerder is vastgelegd op de overzichtspagina van de geregistreerde toepassing.
  • ClientId : de id van de toepassing, ook wel de client genoemd. Vervang de tekst tussen aanhalingstekens door de Toepassings-id (client) waarde die eerder is vastgelegd op de overzichtspagina van de geregistreerde toepassing.
  • ClientCertificates: er wordt een zelfondertekend certificaat gebruikt voor verificatie in de toepassing. Vervang de tekst van de CertificateThumbprint door de vingerafdruk van het certificaat dat eerder is vastgelegd. Gebruik geen zelfondertekend certificaat voor productie-apps.
  • CallbackPath: is een id om de server te helpen een antwoord naar de juiste toepassing om te leiden.
  • DownstreamApi- Is een id die een eindpunt definieert voor toegang tot Microsoft Graph. De toepassings-URI wordt gecombineerd met het opgegeven bereik. Als u de configuratie wilt definiëren voor een toepassing die eigendom is van de organisatie, is de waarde van het kenmerk Scopes iets anders.

De omleidings-URI bijwerken

Vanuit de vereistenis de omleidings-URI ingesteld op https://localhost:5001/signin-oidc. Dit moet worden bijgewerkt in de instellingen voor het starten van toepassingen. U kunt de omleidings-URI gebruiken die is gemaakt tijdens de installatie van de lokale toepassing of een ander beschikbaar poortnummer, mits deze overeenkomt met de omleidings-URI in de registratie van de toepassing.

  1. Open in de map Eigenschappen het bestand launchSettings.json.

  2. Zoek het https-object en werk de waarde van applicationURI bij met het juiste poortnummer, in dit geval 5001. De regel moet er ongeveer uitzien als het volgende codefragment:

    "applicationUrl": "https://localhost:5001;http://localhost:{port}",
    

Volgende stap