Freigeben über


Anmelden von Benutzern in einer mobilen iOS-Beispiel-App (Swift) mithilfe der systemeigenen Authentifizierung

Gilt für: Grüner Kreis mit einem weißen Häkchensymbol, das angibt, dass der folgende Inhalt für externe Mandanten gilt. Externe Mandanten (weitere Informationen)

In dieser Schnellstartanleitung erfahren Sie, wie Sie eine iOS-Beispielanwendung ausführen, die die Registrierung, Anmeldung, Abmeldung und Zurücksetzung von Kennwortszenarien mithilfe der externen Microsoft Entra-ID veranschaulicht.

Voraussetzungen

Aktivieren von öffentlichen Client- und systemeigenen Authentifizierungsflüssen

Um anzugeben, dass es sich bei dieser App um einen öffentlichen Client handelt und systemeigene Authentifizierung verwenden kann, aktivieren Sie öffentliche Clients und systemeigene Authentifizierungsflüsse:

  1. Wählen Sie auf der Seite "App-Registrierungen" die App-Registrierung aus, für die Sie öffentliche Client- und systemeigene Authentifizierungsflüsse aktivieren möchten.
  2. Wählen Sie unter Verwalten die Option Authentifizierung aus.
  3. Aktivieren Sie unter Erweiterte Einstellungen die Option zum Zulassen öffentlicher Clientflows:
    1. Wählen Sie für Folgende Mobilgerät- und Desktopflows aktivieren die Option Ja aus.
    2. Wählen Sie für Native Authentifizierung aktivieren die Option Ja aus.
  4. Wählen Sie die Schaltfläche Speichern aus.

Beispiel für das Klonen einer mobilen iOS-Anwendung

  1. Öffnen Sie Terminal, und navigieren Sie zu einem Verzeichnis, in dem Sie den Code behalten möchten.

  2. Klonen Sie die mobile iOS-Anwendung von GitHub, indem Sie den folgenden Befehl ausführen:

    git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-ios-sample.git
    
  3. Navigieren Sie zu dem Verzeichnis, in dem das Repository geklont wurde:

    cd ms-identity-ciam-native-auth-ios-sample
    

Konfigurieren der mobilen Beispielanwendung für iOS

  1. Öffnen Sie in Xcode nativeAuthSampleApp.xcodeproj-Projekt .

  2. Öffnen Sie die Datei NativeAuthSampleApp/Configuration.swift .

  3. Suchen Sie den Platzhalter:

    • Enter_the_Application_Id_Here, und ersetzen Sie ihn mit der Anwendungs-ID (Client-ID) der zuvor von Ihnen registrierten Anwendung.
    • Enter_the_Tenant_Subdomain_Here und ersetzen Sie es durch die Verzeichnis-(Mandanten-)Unterdomäne. Wenn Ihre primäre Mandantendomäne beispielsweise lautet contoso.onmicrosoft.com, verwenden Sie "contoso". Wenn Sie Ihre Mandantenunterdomäne nicht haben, erfahren Sie, wie Sie die Details Ihres Mandanten auslesen.

Hinweis

Denken Sie daran, ein Schema zum Erstellen und Ziel auszuwählen, in dem Sie die erstellten Produkte ausführen. Jedes Schema enthält eine Liste realer oder simulierter Geräte, die die verfügbaren Ziele darstellen.

Ausführen und Testen der mobilen iOS-Beispielanwendung

Um Ihren Code zu erstellen und auszuführen, wählen Sie im Menü "Produkt" in Xcode die Option "Ausführen" aus. Nach einem erfolgreichen Build startet Xcode die Beispiel-App im Simulator.

Screenshot der Benutzeraufforderung zum Eingeben von E-Mails in der iOS-App.

In diesem Leitfaden wird die Nutzung eines E-Mail-Einmalpassworts getestet. Geben Sie eine gültige E-Mail-Adresse ein, wählen Sie "Registrieren" aus, und starten Sie den Codebildschirm zum Senden:

Screenshot der Benutzeraufforderung zum Eingeben einer Einmalkennung (ONE-Time Passcode, OTP) in der iOS-App.

Nachdem Sie Ihre E-Mail-Adresse auf dem vorherigen Bildschirm eingegeben haben, sendet die Anwendung ihr einen Überprüfungscode. Nachdem Sie den empfangenen Code übermittelt haben, führt Sie die Anwendung zurück zum vorherigen Bildschirm und meldet Sie automatisch an.

Andere Szenarien, die dieses Beispiel unterstützt

Die Beispiel-App unterstützt die folgenden Flüsse:

  • E-Mail + Kennwort deckt Anmelde- oder Registrierungsabläufe mit einer E-Mail mit Kennwort ab.
  • Die Registrierung per E-Mail und Kennwort mit Benutzerattributen umfasst die Registrierung mit E-Mail und Kennwort sowie das Übermitteln von Benutzerattributen.
  • Die Kennwortzurücksetzung deckt die Self-Service-Kennwortzurücksetzung (SSPR) ab.
  • Die zugriffsgeschützte API deckt den Aufruf einer geschützten API ab, nachdem sich der Benutzer erfolgreich registriert oder sich anmeldet und ein Zugriffstoken abruft.
  • Fallback in Webbrowser deckt die Verwendung der browserbasierten Authentifizierung als Fallbackmechanismus ab, wenn der Benutzer die Authentifizierung aus irgendeinem Grund nicht über die systemeigene Authentifizierung abschließen kann.

Testen von E-Mails mit Kennwortfluss

In diesem Abschnitt testen Sie E-Mails mit Kennwortfluss mit seinen Varianten, z. B. E-Mail mit Kennwortanmeldung mit Benutzerattributen und SSPR:

  1. Führen Sie die Schritte zum Erstellen eines Benutzerflusses aus, um einen neuen Benutzerablauf zu erstellen, aber wählen Sie diesmal "E-Mail mit Kennwort " als Authentifizierungsmethode aus. Sie müssen "Land/Region " und "Ort " als Benutzerattribute konfigurieren. Alternativ können Sie den vorhandenen Benutzerfluss ändern, um E-Mail mit Kennwort zu verwenden (Select External Identities>User flows>SignInSignUpSample>Identity providers>Email with password>Save).

  2. Verwenden Sie die Schritte zum Zuordnen der Anwendung zum neuen Benutzerablauf , um Ihrem neuen Benutzerablauf eine App hinzuzufügen.

  3. Führen Sie die Beispiel-App aus, und wählen Sie dann das Auslassungszeichenmenü (...) aus, um weitere Optionen zu öffnen.

  4. Wählen Sie das Szenario aus, das Sie testen möchten, z. B. E-Mail+Kennwort oder E-Mail+Kennwortanmeldung mit Benutzerattributen oder Kennwortzurücksetzung, und folgen Sie dann den Anweisungen. Zum Testen der Kennwortzurücksetzung müssen Sie zuerst einen Benutzer registrieren und die einmalige E-Mail-Kennung für alle Benutzer in Ihrem Mandanten aktivieren.

Testaufruf eines geschützten API-Flusses

Verwenden Sie die Schritte unter Aufrufen einer geschützten Web-API in einer beispielbasierten mobilen iOS-App mithilfe der systemeigenen Authentifizierung , um eine geschützte Web-API aus einer Beispiel-mobilen Android-App aufzurufen.

Aktivieren der Anmeldung mit einem Alias oder Benutzernamen

Sie können Benutzern, die sich mit einer E-Mail-Adresse und einem Kennwort anmelden, auch die Möglichkeit geben, sich mit einem Benutzernamen und Kennwort anzumelden. Der Benutzername wird auch als alternativer Anmeldebezeichner bezeichnet, kann eine Kunden-ID, Kontonummer oder ein anderer Bezeichner sein, den Sie als Benutzernamen verwenden möchten.

Sie können dem Benutzerkonto Benutzernamen manuell über das Microsoft Entra Admin Center zuweisen oder in Ihrer App über die Microsoft Graph-API automatisieren.

Führen Sie die Schritte im Artikel 'Anmelden mit einem Alias oder Benutzernamen' aus, um Ihren Benutzern die Anmeldung mit einem Benutzernamen in Ihrer Anwendung zu ermöglichen:

  1. Aktivieren Sie die Anmeldung mit dem Benutzernamen.
  2. Erstellen Sie Benutzer mit Benutzername im Admin Center , oder aktualisieren Sie vorhandene Benutzer, indem Sie einen Benutzernamen hinzufügen. Alternativ können Sie auch die Benutzererstellung und -aktualisierung in Ihrer App mithilfe der Microsoft Graph-API automatisieren.

Nächste Schritte