Delen via


Zelfstudie: Uw iOS-/macOS-app voorbereiden voor systeemeigen verificatie

Van toepassing op: Witte cirkel met grijs X-symbool. Werknemershuurders Groene cirkel met wit vinkje. Externe huurders (meer informatie)

In deze zelfstudie ziet u hoe u systeemeigen MSAL-verificatie-SDK-framework (Microsoft Authentication Library) toevoegt aan uw iOS-/macOS Swift-app.

In deze zelfstudie leert u het volgende:

  • Voeg het MSAL-framework toe aan een iOS-/macOS-app.
  • Een SDK-exemplaar maken.

Voorwaarden

Het MSAL-framework toevoegen aan een iOS-/macOS-app

  1. Open uw iOS-/macOS-project in Xcode.
  2. Selecteer Pakketafhankelijkheden toevoegen... in het menu Bestand.
  3. Voer https://github.com/AzureAD/microsoft-authentication-library-for-objc in als pakket-URL en kies Pakket toevoegen.
  4. Voeg een nieuwe sleutelhangergroep toe aan uw project Capabilities. Gebruik com.microsoft.adalcache in iOS en com.microsoft.identity.universalstorage op macOS.

Zie het leesmij-bestand van het projectvoor meer informatie en andere mechanismen om MSAL aan uw project toe te voegen.

EEN SDK-exemplaar maken

  1. Importeer de MSAL-bibliotheek in uw weergavecontroller door import MSAL boven aan uw ViewController-klasse toe te voegen.

  2. Voeg een nativeAuth lidvariabele toe aan uw ViewController-klasse door de volgende code toe te voegen vlak voor de viewDidLoad() functie:

    var nativeAuth: MSALNativeAuthPublicClientApplication!
    
  3. Voeg vervolgens de volgende code toe aan de functie viewDidLoad():

     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. Vervang de volgende waarden door de waarden uit het Microsoft Entra-beheercentrum:

    1. Zoek de Enter_the_Application_Id_Here waarde en vervang deze door de Application-id (client)-id van de app die u eerder hebt geregistreerd.

    2. Zoek de Enter_the_Tenant_Subdomain_Here en vervang deze door het subdomein Directory (tenant). Als uw primaire tenantdomein bijvoorbeeld is contoso.onmicrosoft.com, gebruikt u contoso. Als u uw subdomein Directory (tenant) niet hebt, leert u hoe u uw tenantgegevens leest.

      De uitdagingstypen zijn een lijst met waarden die door de app worden gebruikt om Microsoft Entra op de hoogte te stellen van de verificatiemethode die wordt ondersteund.

      • Gebruik [.OOB]voor aanmeldings- en aanmeldingsstromen met eenmalige wachtwoordcode voor e-mail.
      • Gebruik [.OOB, .password]voor aanmeldings- en aanmeldingsstromen met e-mail en wachtwoord.
      • Gebruik [.OOB]voor selfservice voor wachtwoordherstel (SSPR).

      Meer informatie over uitdagingstypen.

  5. Als u wilt bouwen, selecteert u de Product>Build op de werkbalk van uw project.

Optioneel: Configuratie van logboekregistratie

MSAL biedt een api voor logboekregistratie die u kunt gebruiken om logboekregistratie in te schakelen en te configureren. Als u alle foutopsporingsuitvoer van MSAL wilt zien, voegt u de volgende code toe aan het begin van de functie viewDidLoad():

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

Hiermee worden alle debuglogboeken van MSAL uitgevoerd, wat nuttig kan zijn bij het diagnosticeren van problemen en het leren hoe de natuurlijke authenticatiestromen werken. Zie Logboekregistratie in MSAL voor iOS-/macOS-voor meer informatie over het configureren van logboekniveaus en aanbevolen procedures.

Volgende stap