Поделиться через


Руководство по подготовке приложения iOS/macOS для собственной проверки подлинности

Область применения: Зеленый круг с символом белой галочки. iOS (Swift) Зеленый круг с символом белой галочки. macOS (Swift) (Swift)

В этом руководстве показано, как добавить собственную платформу SDK для проверки подлинности библиотеки проверки подлинности Майкрософт (MSAL) в приложение Swift для iOS/macOS.

В этом руководстве описано следующее:

  • Добавьте платформу MSAL в приложение iOS/macOS.
  • Создание экземпляра пакета SDK.

Необходимые компоненты

Добавление платформы MSAL в приложение iOS/macOS

  1. Откройте проект iOS или macOS в Xcode.
  2. Выберите " Добавить зависимости пакета" в меню "Файл ".
  3. Введите https://github.com/AzureAD/microsoft-authentication-library-for-objc URL-адрес пакета и нажмите кнопку "Добавить пакет".
  4. Добавьте новую группу цепочки ключей в раздел Возможности для проекта. Используйте com.microsoft.adalcache в iOS и com.microsoft.identity.universalstorage macOS.

Дополнительные сведения и другие механизмы добавления MSAL в проект см. в файле Readme проекта.

Создание экземпляра пакета SDK

  1. Импортируйте библиотеку MSAL в контроллер представления, добавив import MSAL в начало ViewController класса.

  2. Добавьте переменную-член nativeAuth в ViewController класс, добавив следующий код непосредственно перед функцией viewDidLoad() :

    var nativeAuth: MSALNativeAuthPublicClientApplication!
    
  3. Затем добавьте следующий код в функцию 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. Замените следующие значения значениями из Центра администрирования Microsoft Entra:

    1. Enter_the_Application_Id_Here Найдите значение и замените его идентификатором приложения (клиента) зарегистрированного ранее приложения.

    2. Enter_the_Tenant_Subdomain_Here Найдите и замените его поддоменом каталога (клиента). Например, если основной домен клиента — это contoso.onmicrosoft.com, используйте contoso. Если у вас нет поддомена каталога (клиента), узнайте, как считывать сведения о клиенте.

      Типы вызовов — это список значений, которые приложение использует для уведомления Microsoft Entra о методе проверки подлинности, который он поддерживает.

      • Для потоков регистрации и входа с помощью одноразового секретного кода электронной почты используйте [.OOB].
      • Для потоков регистрации и входа с помощью электронной почты и пароля используйте [.OOB, .password].
      • Для самостоятельного сброса пароля (SSPR) используйте [.OOB].

      Узнайте больше о типах проблем.

  5. Чтобы создать, выберите "Сборка продукта>" на панели инструментов проекта.

Необязательно. Настройка ведения журнала

MSAL предоставляет API ведения журнала, который можно использовать для включения и настройки ведения журнала. Чтобы просмотреть все выходные данные отладки из MSAL, добавьте следующий код в начале viewDidLoad() функции:

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

Это выводит все журналы отладки из MSAL, которые могут быть полезны при диагностике проблем и изучении работы собственных потоков проверки подлинности. Дополнительные сведения о настройке уровней журналов и рекомендациях см. в статье "Ведение журнала в MSAL для iOS/macOS".

Следующий шаг