Tutorial: Vorbereiten einer Anwendung für die Authentifizierung

Im vorigen Tutorial haben Sie eine Webanwendung im Microsoft Entra Admin Center registriert. In diesem Tutorial erfahren Sie, wie Sie mithilfe einer IDE eine ASP.NET Core-Web-App erstellen. Außerdem erstellen Sie ein selbstsigniertes Zertifikat und laden es in das Microsoft Entra Admin Center hoch, um Ihre Anwendung zu schützen. Schließlich konfigurieren Sie die Anwendung für die Authentifizierung.

Dieses Tutorial umfasst folgende Punkte:

  • Erstellen einer ASP.NET Core-Web-App
  • Erstellen eines selbstsignierten Zertifikats
  • Konfigurieren der Einstellungen für die Anwendung
  • Definieren von Plattformeinstellungen und URLs

Voraussetzungen

Erstellen eines ASP.NET Core-Projekts

Verwenden Sie die folgenden Registerkarten, um ein ASP.NET Core-Projekt innerhalb einer IDE zu erstellen.

  1. Öffnen Sie Visual Studio, und wählen Sie Neues Projekt erstellen aus.
  2. Suchen Sie nach der Vorlage ASP.NET Core Web App, wählen Sie sie und anschließend Weiter aus.
  3. Geben Sie einen Namen für das Projekt ein, z. B. NewWebAppLocal.
  4. Wählen Sie einen Speicherort für das Projekt aus, oder übernehmen Sie die Standardoption, und wählen Sie dann Weiter aus.
  5. Übernehmen Sie die Standardeinstellung für Framework, Authentifizierungstyp und Konfigurieren für HTTPS. Der Authentifizierungstyp kann auf Keiner festgelegt werden, da dieser Prozess in diesem Tutorial behandelt wird.
  6. Klicken Sie auf Erstellen.

Erstellen und Hochladen eines selbstsignierten Zertifikats

Die Verwendung von Zertifikaten ist eine empfohlene Möglichkeit, die Kommunikation zwischen Client und Server zu schützen. In diesem Tutorial erstellen Sie im Projektverzeichnis ein selbstsigniertes Zertifikat. Weitere Informationen zu selbstsignierten Zertifikaten finden Sie hier.

  1. Wählen Sie Tools > Befehlszeile > Developer-Eingabeaufforderung aus.

  2. Geben Sie den folgenden Befehl ein, um ein neues selbstsigniertes Zertifikat zu erstellen:

    dotnet dev-certs https -ep ./certificate.crt --trust
    

Hochladen des Zertifikats zum Microsoft Entra Admin Center

Um das Zertifikat für die Anwendung verfügbar zu machen, muss es in den Mandanten hochgeladen werden.

  1. Wählen Sie auf der Seite Übersicht der zuvor erstellten Anwendung unter Verwalten die Option Zertifikate und Geheimnisse und dann die Registerkarte Zertifikate (0) aus.

  2. Wählen Sie Zertifikat hochladen.

    Screenshot des Hochladens eines Zertifikats in einen Microsoft Entra-Mandanten.

  3. Wählen Sie das Ordnersymbol aus, suchen Sie dann nach dem Zertifikat, das zuvor erstellt wurde, und wählen Sie es aus.

  4. Geben Sie eine Beschreibung für das Zertifikat ein, und wählen Sie Hinzufügen aus.

  5. Notieren Sie sich den Wert des Fingerabdrucks. Er wird im nächsten Schritt verwendet.

    Screenshot: Kopieren des Zertifikatfingerabdrucks.

Konfigurieren der Anwendung für Authentifizierung und API-Referenz

Die zuvor aufgezeichneten Werte werden verwendet, um die Anwendung für die Authentifizierung zu konfigurieren. Die Konfigurationsdatei appsettings.json wird zum Speichern von während der Laufzeit verwendeten Anwendungseinstellungen benutzt. Da die Anwendung auch eine Web-API aufruft, muss sie einen Verweis darauf enthalten.

  1. Öffnen Sie in Ihrer IDE die Datei appsettings.json, und ersetzen Sie den Dateiinhalt durch den folgenden Codeschnipsel. Ersetzen Sie den Text in Anführungszeichen durch die Werte, die zuvor aufgezeichnet wurden.

    {
    "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: Der Authentifizierungsendpunkt. Überprüfen Sie die verschiedenen verfügbaren Endpunkte unter Nationale Clouds.
    • TenantId – Der Bezeichner des Mandanten, in dem die Anwendung registriert ist. Ersetzen Sie den Text in Anführungszeichen durch den Wert der Verzeichnis-ID (Mandanten-ID), die zuvor auf der Übersichtsseite der registrierten Anwendung aufgezeichnet wurde.
    • ClientId – Der Bezeichner der Anwendung, auch als Client bezeichnet. Ersetzen Sie den Text in Anführungszeichen durch den Wert Anwendungs-ID (Client), der zuvor auf der Übersichtsseite der registrierten Anwendung aufgezeichnet wurde.
    • ClientCertificates: Ein selbstsigniertes Zertifikat wird für die Authentifizierung in der Anwendung verwendet. Ersetzen Sie den Text von „CertificateThumbprint“ durch den Fingerabdruck des zuvor aufgezeichneten Zertifikats.
    • CallbackPath: Dies ist ein Bezeichner, der es dem Server ermöglicht, eine Antwort an die entsprechende Anwendung umzuleiten.
    • DownstreamApi: Dies ist ein Bezeichner, der einen Endpunkt für den Zugriff auf Microsoft Graph definiert. Der Anwendungs-URI wird mit dem angegebenen Bereich kombiniert. Um die Konfiguration für eine Anwendung zu definieren, die im Besitz der Organisation ist, unterscheidet sich der Wert des Attributs „Scopes“ geringfügig.
  2. Speichern Sie die an der Datei vorgenommenen Änderungen.

  3. Öffnen Sie im Ordner Eigenschaften die Datei launchSettings.json.

  4. Suchen und notieren Sie den https-Wert „applicationURI“ in der Datei launchSettings.json, z. B „https://localhost:{port}“. Diese URL wird beim Definieren des Umleitungs-URI verwendet. Verwenden Sie den Wert http nicht.

Hinzufügen einer Plattformumleitungs-URI

  1. Wählen Sie im Microsoft Entra Admin Center unter Verwalten die Option App-Registrierungen und dann die Anwendung aus, die zuvor erstellt wurde.

  2. Wählen Sie im linken Menü unter Verwalten die Option Authentifizierung aus.

  3. Wählen Sie unter Plattformkonfigurationen die Option Plattform hinzufügen und dann Web aus.

    Screenshot: Auswählen der Plattform für die Anwendung.

  4. Geben Sie unter Umleitungs-URIs die applicationURL und dann die CallbackPath,/signin-oidc in der Form https://localhost:{port}/signin-oidc ein.

  5. Geben Sie unter URL für Front-Channel-Abmeldung die folgende URL für die Abmeldung ein: https://localhost:{port}/signout-oidc.

  6. Wählen Sie Konfigurierenaus.

Nächste Schritte