Registrieren einer Anwendung

Abgeschlossen

Registrieren einer Anwendung

Beim Registrieren Ihrer Anwendung wird eine Vertrauensstellung zwischen Ihrer App und Microsoft Identity Platform erstellt. Die Vertrauensstellung ist unidirektional: Ihre App vertraut Microsoft Identity Platform und nicht umgekehrt.

  1. Melden Sie sich mit einem globalen Administratorkonto beim Microsoft Entra Admin Center an.

  2. Öffnen Sie das Portalmenü, und wählen Sie dann Identität aus.

  3. Wählen Sie im Menü Identität unter AnwendungenApp-Registrierungen aus.

  4. Wählen Sie auf der Seite App-Registrierungen im Menü die Option + Neue Registrierung aus.

  5. Registrieren Sie im Dialogfeld Anwendung registrieren eine App mit dem Namen Demo-App unter Verwendung der Standardwerte. Der Umleitungs-URI muss nicht eingegeben werden.

    Screenshot of the Register an application screen with the name and default settings highlighted.

  6. Wenn Sie fertig sind, werden Sie zum Bildschirm Demo-App weitergeleitet.

Hinzufügen eines Umleitungs-URI

Ein Umleitungs-URI ist die Adresse, an die Microsoft Identity Platform den Client eines Benutzers umleitet und nach der Authentifizierung die Sicherheitstoken sendet. In einer Webanwendung für die Produktion ist der Umleitungs-URI beispielsweise häufig ein öffentlicher Endpunkt, auf dem Ihre App ausgeführt wird. Während der Entwicklung wird häufig auch der Endpunkt hinzugefügt, auf dem Sie Ihre App lokal ausführen.

Sie können Umleitungs-URIs für Ihre registrierten Anwendungen hinzufügen und ändern, indem Sie deren Plattformeinstellungen konfigurieren.

Konfigurieren von Plattformeinstellungen

Die Einstellungen für jeden Anwendungstyp (einschließlich Umleitungs-URIs) werden unter Plattformkonfigurationen im Azure-Portal konfiguriert. Bei einigen Plattformen (z. B. Web- und Single-Page-Webanwendungen) müssen Sie manuell einen Umleitungs-URI angeben. Bei anderen Plattformen (z. B. mobile Anwendungen und Desktopanwendungen) stehen Umleitungs-URIs zur Auswahl, die beim Konfigurieren anderer Einstellungen für Sie generiert wurden.

So konfigurieren Sie Anwendungseinstellungen auf Basis der Zielplattform oder des Zielgeräts

  1. Wählen Sie im Azure-Portal unter App-Registrierungen Ihre Anwendung aus.

  2. Wählen Sie unter Verwalten die Option Authentifizierung aus.

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

  4. Wählen Sie unter Plattformen konfigurieren die Kachel für Ihren Anwendungstyp (Plattform) aus, um die Einstellungen zu konfigurieren.

    Screenshot of the Platform configuration pane in the Microsoft Entra admin center.

    Plattform Konfigurationseinstellungen
    Web Geben Sie einen Umleitungs-URI für Ihre App ein. Dabei handelt es sich um die Adresse, an die Microsoft Identity Platform den Client eines Benutzers umleitet und nach der Authentifizierung die Sicherheitstoken sendet. Wählen Sie diese Plattform für Standardwebanwendungen aus, die auf einem Server ausgeführt werden.
    Einseitige Anwendung Geben Sie einen Umleitungs-URI für Ihre App ein. Dabei handelt es sich um die Adresse, an die Microsoft Identity Platform den Client eines Benutzers umleitet und nach der Authentifizierung die Sicherheitstoken sendet. Wählen Sie diese Plattform aus, wenn Sie eine clientseitige Web-App in JavaScript oder mit einem Framework wie Angular, Vue.js, React.js oder Blazor WebAssembly erstellen.
    iOS/macOS Geben Sie die App Bundle-ID ein, die Sie in XCode in Info.plist oder unter „Build Settings“ (Buildeinstellungen) finden.Ein Umleitungs-URI wird für Sie generiert, wenn Sie eine Bundle-ID angeben.
    Android Geben Sie den Paketnamen der App ein, den Sie in der Datei „AndroidManifest.xml“ finden. Generieren Sie den Signaturhash, und geben Sie ihn ein.Ein Umleitungs-URI wird für Sie generiert, wenn Sie diese Einstellungen angeben.
    Mobile Anwendungen und Desktopanwendungen Wählen Sie einen der vorgeschlagenen Umleitungs-URIs aus, oder geben Sie einen benutzerdefinierten Umleitungs-URI an. Für Desktopanwendungen empfehlen wir:https://login.microsoftonline.com/common/oauth2/nativeclient. Wählen Sie diese Plattform für mobile Anwendungen aus, die nicht die neueste Microsoft-Authentifizierungsbibliothek (Microsoft Authentication Library, MSAL) verwenden oder keinen Broker einsetzen. Wählen Sie diese Plattform auch für Desktopanwendungen aus.
  5. Wählen Sie Konfigurieren aus, um die Plattformkonfiguration abzuschließen.

Hinzufügen von Anmeldeinformationen

Anmeldeinformationen werden von vertraulichen Clientanwendungen verwendet, die auf eine Web-API zugreifen. Beispiele für vertrauliche Clients sind Web-Apps, andere Web-APIs oder Anwendungen des Typs „Dienst“ oder „Daemon“. Mit den Anmeldeinformationen kann sich Ihre Anwendung selbst authentifizieren und benötigt zur Laufzeit keine Interaktion durch einen Benutzer.

Sie können Ihrer vertraulichen Client-App-Registrierung sowohl Zertifikate als auch geheime Clientschlüssel (Zeichenfolge) als Anmeldeinformationen hinzufügen.

Screenshot of Azure portal showing the Certificates and secrets pane in app registration.

Hinzufügen eines Zertifikats

Zertifikate (mitunter auch als öffentlicher Schlüssel bezeichnet) werden als Anmeldeinformationstyp empfohlen, da sie eine höhere Sicherheitsstufe als ein geheimer Clientschlüssel bieten. Wenn Sie ein vertrauenswürdiges öffentliches Zertifikat verwenden, können Sie es mit dem Feature „Zertifikate und geheimen Schlüssel“ hinzufügen. Ihr Zertifikat muss einen der folgenden Dateitypen haben: ..cer, .pem, .crt.

Geheimen Clientschlüssel hinzufügen

Der geheime Clientschlüssel (auch als Anwendungskennwort bezeichnet) ist ein Zeichenfolgenwert, der anstelle eines Zertifikats von Ihrer App für die Identifizierung verwendet werden kann. Er ist der einfachere der beiden Typen von Anmeldeinformationen. Er kommt häufig während der Entwicklung zum Einsatz, gilt aber als unsicherer als ein Zertifikat. Für Ihre Anwendungen, die in der Produktion eingesetzt werden, sollten Sie Zertifikate verwenden.

  1. Wählen Sie im Azure-Portal unter App-Registrierungen Ihre Anwendung aus.
  2. Wählen Sie Zertifikate und Geheimnisse und dann Neuer geheimer Clientschlüssel aus.
  3. Fügen Sie eine Beschreibung für Ihren geheimen Clientschlüssel hinzu.
  4. Wählen Sie eine Dauer aus.
  5. Wählen Sie Hinzufügen.
  6. Notieren Sie den Wert des geheimen Schlüssels, der in Ihrem Clientanwendungscode verwendet werden soll. Er wird nie wieder angezeigt, nachdem Sie diese Seite verlassen haben.

Registrieren der Web-API

Um einen bereichsbezogenen Zugriff auf die Ressourcen in Ihrer Web-API zu ermöglichen, müssen Sie die API zunächst bei Microsoft Identity Platform registrieren.

  1. Führen Sie die obigen Schritte aus.
  2. Überspringen Sie die Abschnitte Hinzufügen eines Umleitungs-URIs und Konfigurieren von Plattformeinstellungen. Sie müssen keinen Umleitungs-URI für eine Web-API konfigurieren, da keine Benutzer interaktiv angemeldet werden.
  3. Überspringen Sie vorerst den Abschnitt Hinzufügen von Anmeldeinformationen. Ihre API würde nur eigene Anmeldeinformationen benötigen, wenn sie auf eine nachgelagerte API zugreifen müsste. Ein solches Szenario wird in diesem Artikel nicht behandelt.

Nachdem Sie Ihre Web-API registriert haben, können Sie die Bereiche hinzufügen, mit denen der Code Ihrer API eine differenzierte Berechtigung für Nutzer Ihrer API bereitstellen kann.

Hinzufügen eines Bereichs

Der Code in einer Clientanwendung fordert die Berechtigung zum Ausführen von Vorgängen an, die von Ihrer Web-API definiert werden, indem er zusammen mit seinen Anforderungen ein Zugriffstoken an die geschützte Ressource (die Web-API) übergibt. Ihre Web-API führt anschließend den angeforderten Vorgang nur dann aus, wenn das empfangene Zugriffstoken die für den Vorgang erforderlichen Bereiche (auch als Anwendungsberechtigungen bezeichnet) enthält.

Führen Sie zuerst die folgenden Schritte aus, um einen Beispielbereich namens „Employees.Read.All“ zu erstellen:

  1. Melden Sie sich beim Azure-Portal an.

  2. Wenn Sie Zugriff auf mehrere Mandanten haben, verwenden Sie im Menü am oberen Rand den Filter Verzeichnis + Abonnement, um den Mandanten auszuwählen, der die Registrierung der Client-App enthält.

  3. Wählen Sie Microsoft Entra ID, dann App-Registrierungen und danach die App-Registrierung Ihrer API aus.

  4. Wählen Sie Eine API verfügbar machen und dann Bereich hinzufügen aus.

    Screenshot of an app registration's Expose an API pane in the Microsoft Entra admin center.

  5. Sie werden aufgefordert, einen Anwendungs-ID-URI festzulegen, falls Sie noch keinen konfiguriert haben. Der APP-ID-URI fungiert als Präfix für die Bereiche, auf die Sie in Ihrem API-Code verweisen, und muss global eindeutig sein. Sie können den bereitgestellten Standardwert im Format api:// verwenden oder einen besser lesbaren URI wie https://contoso.com/api angeben.

  6. Geben Sie als Nächstes unter Bereich hinzufügen die Attribute des Bereichs an. Für diese exemplarische Vorgehensweise können Sie die Beispielwerte verwenden oder eigene Werte angeben.

    Feld Beschreibung Beispiel
    Bereichsname Name des Bereichs. Eine allgemeine Benennungskonvention für den Bereich ist „Ressource.Vorgang.Einschränkung“. Employees.Read.All
    Zum Einwilligen berechtigte Personen Die Administrator wählt, ob für diesen Bereich die Einwilligung von Benutzern ausreicht oder die Einwilligung eines Administrators erforderlich ist. Wählen Sie für umfassendere Berechtigungen die Option Nur Administratoren. Administratoren und Benutzer
    Anzeigename der Administratoreinwilligung Eine kurze Beschreibung des Zwecks für den Bereich, der nur Administratoren angezeigt wird. Schreibgeschützter Zugriff auf Mitarbeiterdatensätze
    Beschreibung der Administratoreinwilligung Eine ausführlichere Beschreibung der vom Bereich gewährten Berechtigung, die nur Administratoren angezeigt wird. Ermöglicht der Anwendung einen schreibgeschützten Zugriff auf alle Mitarbeiterdaten.
    Anzeigename der Benutzereinwilligung Eine kurze Beschreibung des Zwecks für den Bereich. Wird Benutzern nur angezeigt, wenn Sie unter „Zum Einwilligen berechtigte Personen“ die Option Administratoren und Benutzer festgelegt haben. Schreibgeschützter Zugriff auf Mitarbeiterdatensätze
    Beschreibung der Benutzereinwilligung Eine ausführlichere Beschreibung der Berechtigung, die vom Bereich gewährt wird. Wird Benutzern nur angezeigt, wenn Sie unter „Zum Einwilligen berechtigte Personen“ die Option Administratoren und Benutzer festgelegt haben. Ermöglichen Sie der Anwendung einen schreibgeschützten Zugriff auf Ihre Mitarbeiterdaten.
  7. Legen Sie den Status auf Aktiviert fest, und wählen Sie dann Bereich hinzufügen aus.

  8. (Optional) Soll Benutzern Ihrer App keine Einwilligungsaufforderung für die von Ihnen festgelegten Bereiche angezeigt werden, können Sie die Clientanwendung für den Zugriff auf Ihre Web-API vorab autorisieren. Sie sollten nur die Clientanwendungen vorab autorisieren, denen Sie vertrauen, da Ihre Benutzer keine Möglichkeit haben, ihre Einwilligung zu verweigern.

    1. Wählen Sie unter Autorisierte Clientanwendungen die Option Eine Clientanwendung hinzufügen aus.
    2. Geben Sie den Wert für Anwendungs-ID (Client) der Clientanwendung ein, die Sie vorab autorisieren möchten, beispielsweise den einer zuvor registrierten Webanwendung.
    3. Wählen Sie unter Autorisierte Bereichedie Bereiche aus, für die Sie die Einwilligungsaufforderung unterdrücken möchten, und wählen Sie dann Anwendung hinzufügen aus.
    4. Wenn Sie diesen optionalen Schritt ausgeführt haben, ist die Client-App jetzt eine vorab autorisierte Client-App, und Benutzer werden bei der Anmeldung nicht zur Einwilligung aufgefordert.

Fügen Sie als Nächstes einen weiteren Beispielbereich namens „Employees.Write.All“, dem nur Administratoren die Einwilligung erteilen können. Bereiche, die die Einwilligung von Administratoren erfordern, werden in der Regel für den Zugriff auf Vorgänge mit erforderlichen höheren Berechtigungen verwendet. Außerdem werden sie häufig von Clientanwendungen verwendet, die als Back-End-Dienste oder Daemons ausgeführt werden und keine Benutzer interaktiv anmelden.

Um den Beispielbereich „Employees.Write.All“ hinzuzufügen, führen Sie die oben beschriebenen Schritte aus, und geben Sie unter Bereich hinzufügen die folgenden Werte an:

Feld Beispielwert
Bereichsname Employees.Write.All
Zum Einwilligen berechtigte Personen Nur Administratoren
Anzeigename der Administratoreinwilligung Schreibzugriff auf Mitarbeiterdatensätze
Beschreibung der Administratoreinwilligung Ermöglicht der Anwendung Schreibzugriff auf alle Mitarbeiterdaten.
Anzeigename der Benutzereinwilligung Keine (Feld leer lassen)
Beschreibung der Benutzereinwilligung Keine (Feld leer lassen)

Überprüfen der verfügbar gemachten Bereiche

Wenn Sie die beiden in den vorherigen Abschnitten beschriebenen Beispielbereiche erfolgreich hinzugefügt haben, werden sie, ähnlich wie in der folgenden Abbildung gezeigt, im Bereich Eine API verfügbar machen der App-Registrierung Ihrer Web-API angezeigt:

Screenshot of the Expose an API pane showing two exposed scopes for assignment in the app registration.

Wie aus der Abbildung hervorgeht, wird die vollständige Zeichenfolge eines Bereichs durch die Verkettung von Anwendungs-ID-URI der Web-API und Bereichsname des Bereichs gebildet.

Wenn der Anwendungs-ID-URI Ihrer Web-API beispielsweise https://contoso.com/api und der Bereichsname „Employees.Read.All“ lautet, ergibt sich daraus die folgende Zeichenfolge für den vollständigen Bereich:

https://contoso.com/api/Employees.Read.All

Verwenden der verfügbar gemachten Bereiche

Als Nächstes konfigurieren Sie die Registrierung einer Client-App mit Zugriff auf Ihre Web-API und die Bereiche, die Sie mit den obigen Schritten festgelegt haben.

Nachdem der Registrierung einer Client-App die Berechtigung für den Zugriff auf Ihre Web-API erteilt wurde, kann Microsoft Identity Platform für den Client ein OAuth 2.0-Zugriffstoken ausstellen. Wenn der Client die Web-API aufruft, präsentiert er ein Zugriffstoken, dessen Bereichsanspruch (scp) auf die Berechtigungen festgelegt ist, die Sie in der Client-App-Registrierung angegeben haben.

Sie können später bei Bedarf zusätzliche Bereiche verfügbar machen. Beachten Sie, dass Ihre Web-API mehrere Bereiche verfügbar machen kann, die verschiedenen Vorgängen zugeordnet sind. Ihre Ressource kann zur Laufzeit durch Auswerten der Bereichsansprüche (scp) im erhaltenen OAuth 2.0-Zugriffstoken den Zugriff auf die Web-API steuern.

Was passiert hinter den Kulissen?

  • Die App-Registrierung wird im Basismandanten erstellt.
  • Die App wird mit einem Sicherheitsprinzipal in Microsoft Entra ID instanziiert.
  • Der Sicherheitsprinzipal erhält die Zustimmung des*der ersten Benutzer*in oder Administrator*in, basierend auf der Einrichtung der verfügbar gemachten API.
  • Dem Sicherheitsprinzipal wird das Sicherheitstoken gewährt, wenn Benutzer*innen auf die Anwendung zugreifen und die API verwenden.