Share via


Quickstart: Gebruikers aanmelden en de Microsoft Graph API aanroepen vanuit een ASP.NET Core-web-app

In deze quickstart wordt een voorbeeld-ASP.NET Core-web-app gebruikt om u te laten zien hoe u gebruikers kunt aanmelden met behulp van de autorisatiecodestroom en de Microsoft Graph API kunt aanroepen. In het voorbeeld wordt Microsoft Authentication Library voor .NET en Microsoft Identity Web gebruikt om verificatie af te handelen.

Vereisten

De toepassings- en record-id's registreren

Als u de registratie wilt voltooien, geeft u de toepassing een naam op en geeft u de ondersteunde accounttypen op. Nadat de toepassing is geregistreerd, worden in het deelvenster Overzicht van de toepassing de id's weergegeven die nodig zijn in de broncode van de toepassing.

  1. Meld u aan bij het Microsoft Entra-beheercentrum.

  2. Als u toegang hebt tot meerdere tenants, gebruikt u het pictogram Instellingen in het bovenste menu om over te schakelen naar de tenant waarin u de toepassing wilt registreren in het menu Mappen en abonnementen.

  3. Blader naar Identiteitstoepassingen>> App-registraties en selecteer Nieuwe registratie.

  4. Voer een naam in voor de toepassing, zoals identity-client-web-app.

  5. Bij Ondersteunde accounttypen selecteert u Enkel accounts in deze organisatieadreslijst. Selecteer de optie Help mij kiezen voor informatie over verschillende accounttypen.

  6. Selecteer Registreren.

    Schermopname die laat zien hoe u een naam invoert en het accounttype selecteert in het Microsoft Entra-beheercentrum.

  7. Het deelvenster Overzicht van de toepassing wordt weergegeven wanneer de registratie is voltooid. Noteer de map-id (tenant) en de toepassings-id (client) die moet worden gebruikt in de broncode van uw toepassing.

    Schermopname van de id-waarden op de overzichtspagina in het Microsoft Entra-beheercentrum.

    Notitie

    De ondersteunde accounttypen kunnen worden gewijzigd door te verwijzen naar De accounts wijzigen die door een toepassing worden ondersteund.

Een omleidings-URI voor platform toevoegen

Voer de volgende stappen uit om uw app-type op te geven voor uw app-registratie:

  1. Selecteer Verificatie onder Beheren.
  2. Selecteer op de pagina Platformconfiguraties de optie Een platform toevoegen en selecteer vervolgens de optie Web.
  3. Voer voor de omleidings-URI's in https://localhost:5001/signin-oidc.
  4. Voer onder afmeldings-URL voor front-channel de naam https://localhost:5001/signout-callback-oidc in voor afmelding.
  5. Selecteer Configureren om uw wijzigingen op te slaan.

De voorbeeldtoepassing klonen of downloaden

Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand .

  • Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:

    git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
    
  • Download het .zip-bestand. Pak het uit naar een bestandspad waarbij de lengte van de naam minder dan 260 tekens is.

Een zelfondertekend certificaat maken en uploaden

  1. Gebruik de volgende opdrachten om met behulp van uw terminal te navigeren om een zelfondertekend certificaat te maken in de projectmap.

    cd ms-identity-docs-code-dotnet\web-app-aspnet\
    dotnet dev-certs https -ep ./certificate.crt --trust
    
  2. Ga terug naar het Microsoft Entra-beheercentrum en selecteer onder Beheren certificaten en geheimen>uploadcertificaat.

  3. Selecteer het tabblad Certificaten (0) en selecteer vervolgens Certificaat uploaden.

  4. Er wordt een deelvenster Certificaat uploaden weergegeven. Gebruik het pictogram om naar het certificaatbestand te gaan dat u in de vorige stap hebt gemaakt en selecteer Openen.

  5. Voer een beschrijving in voor het certificaat, bijvoorbeeld Certificaat voor aspnet-web-app en selecteer Toevoegen.

  6. Noteer de vingerafdrukwaarde voor gebruik in de volgende stap.

Het project configureren

  1. Open in uw IDE de projectmap ms-identity-docs-code-dotnet\web-app-aspnet met het voorbeeld.

  2. Open appsettings.json en vervang de bestandsinhoud door het volgende codefragment;

    {
    "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": "*"
    }
    
    • TenantId - De id van de tenant waar de toepassing is geregistreerd. Vervang de tekst tussen aanhalingstekens door de Directory (tenant) ID tekst 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 Application (client) ID 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 tekst door de vingerafdruk van het certificaat dat eerder is vastgelegd.

Voer de toepassing uit en meld u aan

  1. Gebruik de terminal in uw projectmap om de volgende opdracht in te voeren;

    dotnet run
    
  2. Kopieer de https URL die in de terminal wordt weergegeven, https://localhost:5001bijvoorbeeld en plak deze in een browser. U wordt aangeraden een privé- of incognitobrowsersessie te gebruiken.

  3. Volg de stappen en voer de benodigde gegevens in om u aan te melden met uw Microsoft-account. U wordt gevraagd een e-mailadres op te geven, zodat een eenmalige wachtwoordcode naar u kan worden verzonden. Voer de code in wanneer u hierom wordt gevraagd.

  4. De toepassing vraagt toestemming om toegang te behouden tot gegevens die u toegang hebt gegeven tot gegevens en om u aan te melden en uw profiel te lezen. Selecteer Accepteren.

  5. De volgende schermopname wordt weergegeven, waarmee wordt aangegeven dat u zich hebt aangemeld bij de toepassing en uw profielgegevens hebt geopend vanuit de Microsoft Graph API.

    Schermopname van de resultaten van de API-aanroep.

Afmelden bij de toepassing

  1. Zoek de koppeling Afmelden in de rechterbovenhoek van de pagina en selecteer deze.
  2. U wordt gevraagd een account te kiezen om u af te melden. Selecteer het account dat u hebt gebruikt om u aan te melden.
  3. Er verschijnt een bericht dat aangeeft dat u bent afgemeld. U kunt nu het browservenster sluiten.