Anmelden von Benutzern und Benutzerinnen in einer mobilen iOS-Beispiel-App (Swift)
In diesem Leitfaden wird gezeigt, wie Sie eine mobile iOS-Beispielanwendung für die Anmeldung von Benutzern und Benutzerinnen konfigurieren.
In diesem Artikel führen Sie die folgenden Aufgaben aus:
- Registrieren Sie eine Anwendung im Microsoft Entra Admin Center.
- Hinzufügen einer Plattformumleitungs-URL
- Aktivieren des öffentlichen Clientflows
- Aktualisieren Sie die Codebeispieldatei für die iOS-Konfiguration, um Ihre eigene externe Microsoft Entra ID-Instanz für externe Mandantendetails zu verwenden.
- Ausführen und Testen der mobilen iOS-Beispielanwendung
Voraussetzungen
- Xcode
- Ein externer Mandant. Wenn Sie noch nicht darüber verfügen, registrieren Sie sich für eine kostenlose Testversion.
Eine Anwendung registrieren
Damit Ihre Anwendung Benutzer mit Microsoft Entra anmelden kann, muss Microsoft Entra External ID auf die von Ihnen erstellte Anwendung aufmerksam gemacht werden. Durch die App-Registrierung wird eine Vertrauensstellung zwischen der Anwendung und Microsoft Entra eingerichtet. Wenn Sie eine Anwendung registrieren, generiert External ID einen eindeutigen Bezeichner, die Anwendungs-ID (Client). Dieser Wert wird zum Identifizieren Ihrer Anwendung beim Erstellen von Authentifizierungsanforderungen verwendet.
Die folgenden Schritte veranschaulichen, wie Sie Ihre Anwendung im Microsoft Entra Admin Center registrieren:
Melden Sie sich beim Microsoft Entra Admin Center mindestens mit der Rolle Anwendungsentwickler an.
Wenn Sie Zugriff auf mehrere Mandanten haben, verwenden Sie das Einstellungen-Symbol im oberen Menü, um über das Menü Verzeichnisse + Abonnements zu Ihrem externen Mandanten zu wechseln.
Navigieren Sie zu Identität>Anwendungen>App-Registrierungen.
Wählen Sie + Neue Registrierung aus.
Auf der Seite Anwendung registrieren die angezeigt wird.
- Geben Sie im Abschnitt Name einen aussagekräftigen Anwendungsnamen ein, der den Benutzern der Anwendung angezeigt wird (z. B. ciam-client-app).
- Wählen Sie unter Unterstützte Kontotypen die Option Nur Konten in diesem Organisationsverzeichnis aus.
Wählen Sie Registrieren.
Der Bereich Übersicht der Anwendung wird bei erfolgreicher Registrierung angezeigt. Notieren Sie sich die Anwendungs-ID (Client), die im Quellcode Ihrer Anwendung verwendet werden sollen.
Hinzufügen einer Plattformumleitungs-URL
Führen Sie die folgenden Schritte aus, um den App-Typ für Ihre App-Registrierung anzugeben:
- Wählen Sie unter Verwalten die Option Authentifizierung aus.
- Wählen Sie auf der Seite Plattformkonfigurationen die Option Plattform hinzufügen und dann die Option iOS/macOS aus.
- Geben Sie die Bündel-ID Ihres Projekts ein. Wenn Sie den Beispielcode heruntergeladen haben, lautet dieser Wert
com.microsoft.identitysample.ciam.MSALiOS
. - Wählen Sie Konfigurieren aus, und speichern Sie die MSAL-Konfiguration, die im Bereich iOS/macOS-Konfiguration angezeigt wird, damit Sie diese später beim Konfigurieren Ihrer App eingeben können.
- Wählen Sie Fertig aus.
Aktivieren des öffentlichen Clientflows
Führen Sie diese Schritte aus, um Ihre App als öffentlichen Client zu identifizieren:
Wählen Sie unter Verwalten die Option Authentifizierung aus.
Wählen Sie unter Erweiterte Einstellungen für Öffentliche Clientflows zulassen die Option Ja aus.
Wählen Sie Speichern aus, um Ihre Änderungen zu speichern.
Administratoreinwilligung erteilen
Nachdem Sie die Anwendung registriert haben, wird ihr die Berechtigung User.Read zugewiesen. Da der Mandant jedoch ein externer Mandant ist, können die Kundenbenutzer selbst in diese Berechtigung einwilligen. Als Administrator müssen Sie im Namen aller Benutzer im Mandanten dieser Berechtigung zustimmen:
Wählen Sie auf der Seite App-Registrierungen die von Ihnen erstellte Anwendung (z. B. ciam-client-app) aus, um die Seite Übersicht zu öffnen.
Wählen Sie unter Verwalten die Option API-Berechtigungen.
- Wählen Sie Administratorzustimmung für <Name Ihres Mandanten> erteilen und dann Ja aus.
- Wählen Sie Aktualisieren aus, und vergewissern Sie sich, dass für die Berechtigung unter Status der Status Erteilt für <Name Ihres Mandanten> angezeigt wird.
Beispiel für das Klonen einer mobilen iOS-Anwendung
Um die Beispielanwendung zu erhalten, können Sie sie entweder von GitHub klonen oder als ZIP-Datei herunterladen.
Öffnen Sie zum Klonen des Beispiels eine Eingabeaufforderung, navigieren Sie zu der Stelle, an der Sie das Projekt erstellen möchten, und geben Sie den folgenden Befehl ein:
git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-ios-sample.git
Konfigurieren der mobilen Beispielanwendung für iOS
Um die Authentifizierung und den Zugriff auf Microsoft Graph-Ressourcen zu aktivieren, konfigurieren Sie das Beispiel anhand der folgenden Schritte:
Öffnen Sie in Xcode das Projekt, das Sie geklont haben.
Öffnen Sie die Datei /MSALiOS/Configuration.swift.
Suchen Sie den folgenden Platzhalter:
Enter_the_Application_Id_Here
, und ersetzen Sie ihn mit der Anwendungs-ID (Client-ID) der zuvor von Ihnen registrierten Anwendung.Enter_the_Redirect_URI_Here
, und ersetzen Sie sie durch den Wert von kRedirectUri in der MSAL-Konfigurationsdatei (Microsoft Authentication Library), die Sie zuvor heruntergeladen haben, als Sie die Plattformumleitungs-URL hinzugefügt haben.Enter_the_Protected_API_Scopes_Here
, und ersetzen Sie sie durch die zuvor notierten Bereiche in Erteilen der Administratoreinwilligung. Wenn Sie keine Bereiche aufgezeichnet haben, können Sie diese Bereichsliste leer lassen.Enter_the_Tenant_Subdomain_Here
, und ersetzen Sie ihn durch die Unterdomäne des Verzeichnisses (des Mandanten). Wenn Ihre primäre Mandantendomäne beispielsweisecontoso.onmicrosoft.com
lautet, verwenden Siecontoso
. Wenn Sie Ihre Mandantendomäne nicht kennen, erfahren Sie, wo Sie Ihre Mandantendetails nachlesen können.
Sie haben die App konfiguriert und können sie ausführen.
Ausführen und Testen der iOS-Beispiel-App
Führen Sie die folgenden Schritte aus, um Ihre App zu erstellen und auszuführen:
- Klicken Sie im Menü Produkt in Xcode auf Ausführen, um den Code zu erstellen und auszuführen. Nach einer erfolgreichen Erstellung startet Xcode die Beispiel-App im Simulator.
- Wählen Sie Token interaktiv abrufen aus, um ein Zugriffstoken anzufordern.
- Wenn Sie die API „GET ausführen“ auswählen, um eine geschützte ASP.NET Core-Web-API aufzurufen, wird eine Fehlermeldung angezeigt.
Weitere Informationen zum Aufrufen einer geschützten Web-API finden Sie unter Nächste Schritte.