Freigeben über


Tutorial: Bereiten Sie Ihre iOS/macOS App für die native Authentifizierung vor

Gilt für: Grüner Kreis mit weißem Häkchen-Symbol. iOS (Swift) Grüner Kreis mit weißem Häkchen-Symbol. macOS (Swift)

Dieses Tutorial zeigt, wie Sie das SDK-Framework Microsoft Authentication Bibliothek (MSAL) in Ihre iOS/macOS Swift App einbinden.

In diesem Tutorial lernen Sie Folgendes:

  • Fügen Sie das MSAL Framework zu einer iOS/macOS App hinzu.
  • Erstellen der SDK-Instanz.

Voraussetzungen

Hinzufügen des MSAL Frameworks zu einer iOS/macOS App

  1. Öffnen Sie Ihr iOS/macOS-Projekt in Xcode.
  2. Wählen Sie im Menü File (Datei) die Option Add Package Dependencies... (Paketabhängigkeiten hinzufügen) aus.
  3. Geben Sie https://github.com/AzureAD/microsoft-authentication-library-for-objc als Paket-URL ein, und wählen Sie Add Package (Paket hinzufügen) aus.
  4. Fügen Sie Ihrem Projekt Funktionen eine neue Keychaingruppe hinzu. Verwenden Sie com.microsoft.adalcache unter iOS und com.microsoft.identity.universalstorage unter macOS.

Weitere Informationen und andere Mechanismen zum Hinzufügen von MSAL zu Ihrem Projekt finden Sie in der Projekt-Readme-Datei.

Erstellen der SDK-Instanz

  1. Importieren Sie die MSAL-Bibliothek in Ihren Ansichtscontroller, indem Sie import MSAL oben in der ViewController-Klasse hinzufügen.

  2. Fügen Sie Ihrer ViewController-Klasse eine nativeAuth-Membervariable hinzu, indem Sie den folgenden Code direkt vor der viewDidLoad()-Funktion hinzufügen:

    var nativeAuth: MSALNativeAuthPublicClientApplication!
    
  3. Fügen Sie als Nächstes der viewDidLoad()-Funktion den folgenden Code hinzu:

     do {
        nativeAuth = try MSALNativeAuthPublicClientApplication(
            clientId: "Enter_the_Application_Id_Here",
            tenantSubdomain: "Enter_the_Tenant_Subdomain_Here",
            challengeTypes: [.OOB]
        )
    
        print("Initialized Native Auth successfully.")
     } catch {
        print("Unable to initialize MSAL \(error)")
     }
    
  4. Ersetzen Sie die folgenden Werte durch die Werte aus dem Microsoft Entra Admin Center:

    1. Suchen Sie den Wert Enter_the_Application_Id_Here, und ersetzen Sie ihn durch die Anwendungs-ID (Client) der zuvor registrierten App.

    2. Suchen Sie den Wert Enter_the_Tenant_Subdomain_Here, und ersetzen Sie ihn durch die Unterdomäne des Verzeichnisses (des Mandanten). Wenn Ihre primäre Mandantendomäne beispielsweise contoso.onmicrosoft.com lautet, verwenden Sie contoso. Wenn Sie die Unterdomäne des Verzeichnisses (Mandanten) nicht kennen, können Sie Ihre Mandantendetails auslesen.

      Aufforderungstypen sind Listen von Werten, die von der App verwendet werden, um Microsoft Entra über die unterstützte Authentifizierungsmethode zu benachrichtigen.

      • Verwenden Sie für Flows zur Registrierung und Anmeldung mit E-Mail-Adresse und einem Einmal-Passcode [.OOB].
      • Verwenden Sie für Flows zur Registrierung und Anmeldung mit E-Mail-Adresse und Kennwort [.OOB, .password].
      • Verwenden Sie für die Self-Service-Kennwortzurücksetzung (SSPR) [.OOB].

      Erfahren Sie mehr über Aufforderungstypen.

  5. Wählen Sie zum Kompilieren die Option Product>Build in der Symbolleiste Ihres Projekts aus.

Optional: Konfiguration der Protokollierung

MSAL stellt eine Protokollierungs-API bereit, die Sie zum Aktivieren und Konfigurieren der Protokollierung verwenden können. Um die gesamte Debugausgabe von MSAL anzuzeigen, fügen Sie am Anfang der viewDidLoad()-Funktion den folgenden Code hinzu:

MSALGlobalConfig.loggerConfig.logLevel = .verbose
MSALGlobalConfig.loggerConfig.setLogCallback { logLevel, message, containsPII in
   if !containsPII {
      print("MSAL: \(message ?? "")")
   }
}

Dadurch werden alle Debugprotokolle von MSAL ausgegeben. Diese können bei der Diagnose von Problemen hilfreich sein und Ihnen dabei helfen, die Funktionsweise der nativen Authentifizierung zu verstehen. Weitere Informationen zum Konfigurieren von Protokollebenen und bewährte Methoden finden Sie unter Protokollierung in MSAL für iOS/macOS.

Nächster Schritt