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


Устранение неполадок подключаемого модуля расширения единого входа Microsoft Enterprise на устройствах Apple

В этой статье содержатся рекомендации по устранению неполадок, используемых администраторами для устранения проблем при развертывании и использовании подключаемого модуля единого входа Enterprise. Расширение единого входа Apple можно развернуть в iOS/iPadOS и macOS.

Организации могут выбрать развертывание единого входа на корпоративных устройствах, чтобы обеспечить лучший интерфейс для своих конечных пользователей. На платформах Apple этот процесс включает реализацию Единый вход (единый вход) с помощью первичных маркеров обновления. Единый вход освобождает конечных пользователей от бремени чрезмерных запросов проверки подлинности.

Корпорация Майкрософт реализовала подключаемый модуль, построенный на основе платформы единого входа Apple, которая обеспечивает проверку подлинности с брокером для приложений, интегрированных с идентификатором Microsoft Entra. Дополнительные сведения см. в статье подключаемый модуль единого входа Microsoft Enterprise для устройств Apple.

Типы расширений

Apple поддерживает два типа расширений единого входа, которые являются частью своей платформы: перенаправление и учетные данные. Подключаемый модуль единого входа Microsoft Enterprise реализован как тип перенаправления и лучше всего подходит для проверки подлинности брокера с идентификатором Microsoft Entra. В следующей таблице сравниваются два типа расширений.

тип расширения; Рабочие нагрузки Принцип работы Основные отличия
Перенаправление Современные методы проверки подлинности, такие как OpenID Connect, OAUTH2 и SAML (Идентификатор Microsoft Entra) Операционная система перехватывает запрос проверки подлинности из приложения на URL-адреса поставщика удостоверений, определенные в профиле конфигурации MDM расширения. Расширения перенаправления получают: URL-адреса, заголовки и текст. Запрос учетных данных перед запросом данных. Использует URL-адреса в профиле конфигурации MDM.
Подтверждение компетенции Типы проверки подлинности вызовов и ответов, такие как Kerberos (локальная служба Active Directory доменные службы) Запрос отправляется из приложения на сервер проверки подлинности (контроллер домена AD). Расширения учетных данных настраиваются с помощью HOSTS в профиле конфигурации MDM. Если сервер проверки подлинности возвращает вызов, соответствующий узлу, указанному в профиле, операционная система направляет вызов расширению. Расширение имеет выбор обработки или отклонения задачи. При обработке расширение возвращает заголовки авторизации для завершения запроса, а сервер проверки подлинности возвращает ответ вызывающей стороны. Затем запрашивать данные для проверки подлинности. Используйте HOSTs в профиле конфигурации MDM.

Корпорация Майкрософт реализует реализацию проверки подлинности с помощью брокера для следующих клиентских операционных систем:

ОС Брокер проверки подлинности
Windows Диспетчер веб-учетных записей (WAM)
iOS/iPadOS Microsoft Authenticator
Android Microsoft Authenticator или Microsoft Корпоративный портал Intune
macOS Microsoft Корпоративный портал Intune (через расширение единого входа)

Все приложения брокера Майкрософт используют артефакт ключа, известный как первичный маркер обновления (PRT), который является веб-маркером JSON (JWT), используемым для получения маркеров доступа для приложений и веб-ресурсов, защищенных с помощью идентификатора Microsoft Entra. При развертывании с помощью MDM расширение корпоративного единого входа для macOS или iOS получает PRT, аналогичное PRT, используемым на устройствах Windows диспетчером веб-учетных записей (WAM). Дополнительные сведения см. в статье "Что такое первичный маркер обновления".

Модель устранения неполадок

В следующей блок-схеме описывается логический поток для устранения неполадок с расширением единого входа. Остальная часть этой статьи подробно описывает шаги, описанные в этой блок-схеме. Устранение неполадок можно разбить на две отдельные области фокуса: развертывание и поток проверки подлинности приложений.

Действия по отказу от единого входа платформы в macOS

Чтобы отказаться от единого входа, включенного по ошибке, администраторы должны удалить профиль расширения единого входа с поддержкой PSSO с устройств и развернуть новый профиль расширения единого входа с отключенными или удаленными флагами PSSO.

  1. Удаление целевого объекта для профиля единого входа с поддержкой PSSO
  2. Инициируйте синхронизацию устройств, чтобы получить профиль единого входа с включенным PSSO удален с устройства.
  3. Назначение устройства с новым профилем единого входа с отключенным PSSO
  4. Запуск синхронизации устройств для получения нового профиля, установленного на устройстве

Внимание

Примечание. Обновление существующего профиля единого входа на устройстве не поможет отключить PSSO после завершения регистрации PSSO. Только полное удаление профиля единого входа с устройства приведет к удалению состояния PSSO с устройства.

Контекст.

Пользователи начнут видеть уведомление о регистрации PSSO на устройствах macOS 13+ в двух сценариях:

  1. Если устройство уже имеет Корпоративный портал Intune версию, поддерживающую PSSO, и администратор развертывает новую политику расширения единого входа с включенной поддержкой PSSO
  2. Если пользователь уже предназначен для политики расширения единого входа с включенным PSSO и более поздней версией Корпоративный портал Intune, поддерживающей PSSO, устанавливается на устройстве.

Внимание

Администраторы не должны нацеливаться на пользователей с политикой расширения единого входа с включенным PSSO, если они не протестированы и готовы к развертыванию, так как это может привести к прерыванию существующих пользователей и их условий соответствия.

Внимание

Примечание. Для пользователей, которые завершают регистрацию PSSO, устаревшая регистрация WPJ будет удалена из цепочки ключей. Если регистрация PSSO была выполнена ошибкой, после того как администратор удаляет профиль единого входа с PSSO и устанавливает новый профиль без PSSO, устаревшая регистрация WPJ должна быть выполнена повторно для соответствия устройств.

Устранение неполадок при развертывании

Большинство проблем, с которыми сталкиваются клиенты, возникают либо из неправильной конфигурации мобильных Управление устройствами (MDM) профиля расширения единого входа, либо неспособность устройства Apple получать профиль конфигурации из MDM. В этом разделе рассматриваются действия, которые можно предпринять, чтобы убедиться, что профиль MDM был развернут в Mac и имеет правильную конфигурацию.

Требования к развертыванию

Проверка версии операционной системы macOS

Чтобы проверить версию операционной системы (ОС) на устройстве macOS, выполните следующие действия. Профили расширения единого входа Apple развертываются только на устройствах под управлением macOS 10.15 (Catalina) или более поздней версии. Вы можете проверить версию macOS из пользовательского интерфейса или терминала.

Пользовательский интерфейс
  1. На устройстве macOS выберите значок Apple в левом верхнем углу и выберите "Об этом Mac".

  2. Версия операционной системы указана рядом с macOS.

Терминал
  1. На устройстве macOS дважды щелкните папку "Приложения ", а затем дважды щелкните папку "Служебные программы ".

  2. Дважды щелкните приложение терминала .

  3. Когда терминал открывает тип sw_vers в запросе, найдите следующий результат:

    % sw_vers
    ProductName: macOS
    ProductVersion: 13.0.1
    BuildVersion: 22A400
    

Проверка версии операционной системы iOS

Чтобы проверить версию операционной системы (ОС) на устройстве iOS, выполните следующие действия. Профили расширения единого входа Apple развертываются только на устройствах под управлением iOS 13 или более поздней версии. Вы можете проверить версию iOS из приложения "Параметры". Откройте приложение "Параметры":

Снимок экрана: значок приложения параметров iOS.

Перейдите к разделу "Общие ", а затем ". На этом экране перечислены сведения об устройстве, включая номер версии iOS:

Снимок экрана: версия iOS в приложении

Развертывание MDM профиля конфигурации расширения единого входа

Обратитесь к администратору MDM (или группе Управление устройствами), чтобы обеспечить развертывание профиля конфигурации расширения на устройствах Apple. Профиль расширения можно развернуть с любого MDM, поддерживающего устройства macOS или iOS.

Внимание

Apple требует, чтобы устройства регистрировались в MDM для развертывания расширения единого входа.

В следующей таблице приведены конкретные рекомендации по установке MDM в зависимости от того, в какой ОС развертывается расширение:

Внимание

Хотя для развертывания расширения единого входа поддерживается любой MDM, многие организации реализуют политики условного доступа на основе устройств путем оценки политик соответствия MDM. Если используется сторонний MDM, убедитесь, что поставщик MDM поддерживает соответствие партнеров Intune, если вы хотите использовать политики условного доступа на основе устройств. При развертывании расширения единого входа с помощью Intune или поставщика MDM, поддерживающего соответствие партнеров Intune, расширение может передать сертификат устройства идентификатору Microsoft Entra, чтобы проверка подлинности устройства была завершена.

Проверка конфигурации сети на устройстве macOS

Платформа расширения единого входа от Apple и расширения единого входа Microsoft Enterprise, построенная на нем, требует, чтобы определенные домены были исключены из перехвата и проверки TLS (также известный как разрыв и проверка прокси-сервера). Следующие домены не должны подвергаться проверке TLS:

  • app-site-association.cdn-apple.com
  • app-site-association.networking.apple
Проверьте, нарушена ли конфигурация единого входа из-за проверки TLS

Проверить, влияет ли проверка TLS на конфигурацию единого входа, запустив sysdiagnose из приложения терминала на затронутом устройстве:

sudo sysdiagnose -f ~/Desktop/

Sysdiagnose будет сохранен на рабочем столе в виде архива .tar.gz. Извлеките архив и откройте файл system_logs.logarchive . Откроется в консольном приложении. Найдите com.apple.appsso и измените фильтр на SUBSYSTEM:

Снимок экрана: sysdiagnose.

Найдите события, указывающие на наличие связанных сбоев домена, особенно связанных с доменами Майкрософт, например login.microsoftonline.com. Эти события могут указывать на проблемы проверки TLS, которые препятствуют правильной работе расширения единого входа. Домены Apple не будут отображаться в журнале sysdiagnose, даже если они влияют на неподдерживаемую конфигурацию проверки TLS.

Проверка конфигурации проверки TLS

Apple предоставляет средство macOS для проверки ряда распространенных проблем конфигурации, называемых служебной программой оценки Mac. Это средство можно скачать из AppleSeed для ИТ-специалистов. Если у вас есть доступ к AppleSeed для ИТ-отдела, скачайте программу оценки Mac из области ресурсов. После установки приложения запустите оценку. После завершения оценки перейдите к HTTPS Interception ->-Дополнительное содержимое и> проверьте два следующих элемента:

Снимок экрана: служебная программа оценки Mac.

Если эти проверки имеют предупреждение или ошибку, на устройстве может возникнуть проверка TLS. Обратитесь к вашей группе сети, чтобы исключить *.cdn-apple.com и *.networking.apple из проверки TLS.

Выходные подробные журналы swcd

Apple предоставляет служебную программу swcutil командной строки, которая позволяет отслеживать ход проверки связанного домена. Вы можете отслеживать любые связанные ошибки домена с помощью следующей команды:

sudo swcutil watch --verbose

Найдите следующую запись в журналах и проверьте, помечена ли она или есть ли ошибки:


    ```
    Entry s = authsrv, a = UBF8T346G9.com.microsoft.CompanyPortalMac, d = login.microsoftonline.com
    ```

Очистка кэша проверки TLS macOS

Если у вас возникли проблемы с связанными доменами и есть разрешенные домены в средстве проверки TLS на устройстве, может потребоваться некоторое время, чтобы связанный кэш проверки домена Apple был недопустим. К сожалению, не существует детерминированных шагов, которые повторно активируют повторную проверку связанного домена на всех компьютерах, но есть несколько способов, которые можно предпринять.

Для сброса кэша устройства можно выполнить следующие команды:

pkill -9 swcd
sudo swcutil reset
pkill -9 AppSSOAgent

Повторно проверьте конфигурацию расширения единого входа после сброса кэша.

Иногда эта команда недостаточно и не полностью сбрасывает кэш. В таких случаях можно попытаться выполнить следующие действия.

  • Удалите или переместите приложение Корпоративный портал Intune в корзину, а затем перезапустите устройство. После завершения перезагрузки можно попробовать повторно установить приложение Корпоративный портал.
  • Повторно зарегистрируйте устройство.

Если ни один из указанных выше методов не устранит проблему, в вашей среде может возникнуть что-то другое, которое может блокировать связанную проверку домена. Если это произойдет, обратитесь в службу поддержки Apple для дальнейшего устранения неполадок.

Проверка профиля конфигурации единого входа на устройстве macOS

Если администратор MDM выполнил действия, описанные в предыдущем разделе , развертывание профиля расширения единого входа, следующий шаг — проверить успешность развертывания профиля на устройстве.

Поиск профиля конфигурации MDM расширения единого входа
  1. На устройстве macOS выберите параметры системы.

  2. Когда параметры системы отображаются профили типов и возвращаются.

  3. Это действие должно отобразить панель профилей.

    Снимок экрана: профили конфигурации.

    Снимок экрана выноски Description
    1 Указывает, что устройство находится под управлением MDM .
    2 Можно выбрать несколько профилей. В этом примере профиль расширения единого входа Microsoft Enterprise называется Расширяемым Единый вход Profile-32f37be3-302e-4549-a3e3-854d300e117a.

    Примечание.

    В зависимости от типа используемого MDM может быть несколько профилей, и их схема именования является произвольной в зависимости от конфигурации MDM. Выберите каждую из них и проверьте, что строка параметров указывает, что это расширение Единый вход.

  4. Дважды щелкните профиль конфигурации, соответствующий значению параметров расширения Единый вход.

    Снимок экрана: профиль конфигурации расширения единого входа.

    Снимок экрана выноски Параметр профиля конфигурации Description
    1 Со знаком Центр подписи поставщика MDM.
    2 Установлено Метка даты и времени, показывающая, когда расширение установлено (или обновлено).
    3 Параметры: расширение Единый вход Указывает, что этот профиль конфигурации является типом расширения единого входа Apple.
    4 Расширение Идентификатор, который сопоставляется с идентификатором пакета приложения, на котором запущен подключаемый модуль расширения Microsoft Enterprise. Идентификатор всегда должен быть задан com.microsoft.CompanyPortalMac.ssoextension и идентификатор команды должен отображаться как (UBF8T346G9), если профиль установлен на устройстве macOS. Если какие-либо значения отличаются, MDM не вызывает расширение правильно.
    5 Тип Расширение единого входа Microsoft Enterprise всегда должно иметь тип расширения перенаправления. Дополнительные сведения см. в разделе "Перенаправление и типы расширений учетных данных".
    6 URL-адреса URL-адреса входа, принадлежащие поставщику удостоверений (идентификатор Microsoft Entra). Список поддерживаемых URL-адресов.

    Все расширения перенаправления единого входа Apple должны иметь следующие компоненты полезных данных MDM в профиле конфигурации:

    Компонент полезных данных MDM Description
    Идентификатор расширения Включает идентификатор пакета и идентификатор команды приложения на устройстве macOS, выполняя расширение. Примечание. Расширение единого входа Microsoft Enterprise всегда должно иметь значение com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9), чтобы сообщить операционной системе macOS, что код клиента расширения является частью приложения Корпоративный портал Intune.
    Тип Необходимо задать значение "Перенаправление", чтобы указать тип расширения перенаправления.
    URL-адреса URL-адреса конечной точки поставщика удостоверений (Идентификатор Microsoft Entra), где операционная система направляет запросы проверки подлинности в расширение.
    Необязательная конфигурация расширения Значения словаря, которые могут выступать в качестве параметров конфигурации. В контексте расширения единого входа Microsoft Enterprise эти параметры конфигурации называются флагами компонентов. См . определения флагов функций.

    Примечание.

    Определения MDM для профиля расширения единого входа Apple можно использовать в статье Extensible Single Sign-on MDM payload settings for Apple devices Microsoft реализовано расширение на основе этой схемы. См. подключаемый модуль единого входа Microsoft Enterprise для устройств Apple

  5. Чтобы убедиться, что установлен правильный профиль расширения единого входа Microsoft Enterprise, поле расширения должно соответствовать: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9).

  6. Запишите установленное поле в профиле конфигурации, так как это может быть полезным индикатором устранения неполадок при внесении изменений в конфигурацию.

Если был проверен правильный профиль конфигурации, перейдите к разделу "Устранение неполадок потока проверки подлинности приложений".

Отсутствует профиль конфигурации MDM

Если профиль конфигурации расширения единого входа не отображается в списке профилей после предыдущего раздела, может быть, что конфигурация MDM имеет включенную настройку пользователя или устройства, которая эффективно фильтрует пользователя или устройство от получения профиля конфигурации. Обратитесь к администратору MDM и соберите журналы консоли , найденные в следующем разделе.

Сбор журналов конкретной консоли MDM
  1. На устройстве macOS дважды щелкните папку "Приложения ", а затем дважды щелкните папку "Служебные программы ".

  2. Дважды щелкните консольное приложение.

  3. Нажмите кнопку "Пуск", чтобы включить ведение журнала трассировки консоли.

    Снимок экрана: консольное приложение и кнопка запуска.

  4. Администратор MDM попытается повторно развернуть профиль конфигурации на этом устройстве или пользователе macOS и принудительно выполнить цикл синхронизации.

  5. Подсистема типа:com.apple.ManagedClient в строке поиска и возврат попадания.

    Снимок экрана: консольное приложение с фильтром подсистемы.

  6. Где курсор мигает в сообщении типа строки поиска:Extensible.

    Снимок экрана, на котором показана дополнительная фильтрация консоли в поле сообщения.

  7. Теперь вы увидите журналы консоли MDM, отфильтрованные по действиям профиля конфигурации расширяемого единого входа . На следующем снимку экрана показан профиль конфигурации установленной записи журнала, показывающая, что профиль конфигурации установлен.

Устранение неполадок с потоком проверки подлинности приложений

В этом разделе предполагается, что устройство macOS имеет правильно развернутый профиль конфигурации. Инструкции см. в разделе "Проверка профиля конфигурации единого входа на устройстве macOS".

После развертывания расширения единого входа Microsoft Enterprise для устройств Apple поддерживается два типа потоков проверки подлинности приложений для каждого типа приложения. При устранении неполадок важно понимать тип используемого приложения.

Типы приложений

Тип приложения Интерактивная проверка подлинности Автоматическая проверка подлинности Description Примеры
Собственное приложение MSAL X X MSAL (библиотека проверки подлинности Майкрософт) — это платформа разработчика приложений, предназначенная для создания приложений с платформа удостоверений Майкрософт (идентификатор Microsoft Entra).
Приложения, созданные на основе MSAL версии 1.1 или более поздней , могут интегрироваться с расширением единого входа Microsoft Enterprise.
Если приложение является расширением единого входа (broker), оно использует расширение без дополнительной настройки для получения дополнительных сведений, см. в нашей документации разработчика MSAL.
Microsoft To Do
Единый вход, отличный от MSAL Native/Browser X Приложения, использующие сетевые технологии Apple или веб-представления, можно настроить для получения общих учетных данных из расширения единого входа.
Флаги компонентов должны быть настроены, чтобы убедиться, что идентификатор пакета для каждого приложения разрешен для получения общих учетных данных (PRT).
Microsoft Word
Safari
Microsoft Edge
Visual Studio

Внимание

Не все собственные приложения Майкрософт используют платформу MSAL. Во время публикации этой статьи большинство приложений macOS Microsoft Office по-прежнему полагаются на старую платформу библиотек ADAL и, следовательно, полагаются на поток единого входа в браузере.

Поиск идентификатора пакета для приложения в macOS

  1. На устройстве macOS дважды щелкните папку "Приложения ", а затем дважды щелкните папку "Служебные программы ".

  2. Дважды щелкните приложение терминала .

  3. При открытии osascript -e 'id of app "<appname>"' терминала введите в запросе. См. некоторые примеры:

    % osascript -e 'id of app "Safari"'
    com.apple.Safari
    
    % osascript -e 'id of app "OneDrive"'
    com.microsoft.OneDrive
    
    % osascript -e 'id of app "Microsoft Edge"'
    com.microsoft.edgemac
    
  4. Теперь, когда были собраны идентификаторы пакета, следуйте нашим рекомендациям по настройке флагов функций, чтобы гарантировать, что приложения единого входа, отличные от MSAL Native/Browser, могут использовать расширение единого входа. Примечание. Все идентификаторы пакета чувствительны к конфигурации флага компонента.

Внимание

Приложения, которые не используют технологии Apple Networking (например, WKWebview и NSURLSession), не смогут использовать общие учетные данные (PRT) из расширения единого входа. Google Chrome и Mozilla Firefox попадают в эту категорию. Даже если они настроены в профиле конфигурации MDM, результатом будет обычная проверка подлинности в браузере.

Начальная загрузка

По умолчанию только приложения MSAL вызывают расширение единого входа, а затем в свою очередь расширение получает общие учетные данные (PRT) из идентификатора Microsoft Entra. Однако браузер Safari или другие приложения, отличные от MSAL, можно настроить для получения PRT. См. статью "Разрешить пользователям выполнять вход из приложений, которые не используют MSAL и браузер Safari". После получения PRT расширение единого входа сохранит учетные данные в цепочке ключей входа пользователя. Затем убедитесь, что PRT присутствует в цепочке ключей пользователя:

Проверка доступа к цепочке ключей для PRT

  1. На устройстве macOS дважды щелкните папку "Приложения ", а затем дважды щелкните папку "Служебные программы ".

  2. Дважды щелкните приложение Keychain Access .

  3. В разделе "Цепочка ключей по умолчанию" выберите локальные элементы (или iCloud).

    • Убедитесь, что выбраны все элементы .
    • В строке поиска в правой части введите primaryrefresh (Для фильтрации).

    Снимок экрана: поиск PRT в приложении доступа к цепочке ключей.

    Снимок экрана выноски Компонент учетных данных цепочки ключей Description
    1 Все элементы Отображение всех типов учетных данных в доступе к цепочке ключей
    2 Панель поиска цепочки ключей Разрешает фильтрацию по учетным данным. Фильтрация по типу PRT Microsoft Entra primaryrefresh
    3 Вид Относится к типу учетных данных. Учетные данные PRT Microsoft Entra — это тип учетных данных пароля приложения
    4 Учетная запись Отображает учетную запись пользователя Microsoft Entra, которая владеет PRT в формате: UserObjectId.TenantId-login.windows.net
    5 Where Отображает полное имя учетных данных. Учетные данные PRT Microsoft Entra начинаются со следующего формата: primaryrefreshtoken-29d9ed98-a469-4536-ade2-f981bc1d605 29d9ed98-a469-4536-ade2-f981bc1d605 — это идентификатор приложения для службы брокера проверки подлинности Майкрософт, ответственной за обработку запросов на получение PRT.
    6 Изменен Показывает, когда учетные данные были обновлены в последний раз. Для учетных данных MICROSOFT Entra PRT в любое время, когда учетные данные загружаются или обновляются интерактивным событием входа, которое обновляет метку даты и времени.
    7 Цепочка ключей Указывает, какая цепочка ключей содержит выбранные учетные данные. Учетные данные Microsoft Entra PRT находятся в локальной цепочке ключей или iCloud. Если iCloud включен на устройстве macOS, цепочка ключей локальных элементов станет цепочкой ключей iCloud .
  4. Если PRT не найден в keychain Access, выполните следующие действия в зависимости от типа приложения:

    • Native MSAL: убедитесь, что разработчик приложения, если приложение было создано с помощью MSAL версии 1.1 или более поздней, позволило приложению быть в курсе брокера. Кроме того, ознакомьтесь с инструкциями по устранению неполадок развертывания, чтобы исключить любые проблемы с развертыванием.
    • Не MSAL (Safari): убедитесь, что флаг browser_sso_interaction_enabled компонента имеет значение 1, а не 0 в профиле конфигурации MDM

Поток проверки подлинности после начальной загрузки PRT

Теперь, когда PRT (общие учетные данные) проверены, прежде чем выполнять более глубокие устранения неполадок, полезно понять высокоуровневые шаги для каждого типа приложения и как он взаимодействует с подключаемым модулем расширения единого входа Microsoft Enterprise (приложение брокера). Следующие анимации и описания должны помочь администраторам macOS понять сценарий перед просмотром любых данных ведения журнала.

Собственное приложение MSAL

Сценарий. Приложение, разработанное для использования MSAL (например, Список дел Microsoft клиента), работающего на устройстве Apple, должно войти с помощью учетной записи Microsoft Entra для доступа к защищенной службе Microsoft Entra (например, Список дел Microsoft службе).

Анимация GIF, показывающая поток проверки подлинности приложения MSAL с помощью PRT.

  1. Приложения, разработанные MSAL, вызывают расширение единого входа напрямую и отправляют PRT в конечную точку маркера Microsoft Entra вместе с запросом приложения на маркер для защищенного ресурса Microsoft Entra.
  2. Идентификатор Microsoft Entra проверяет учетные данные PRT и возвращает маркер для конкретного приложения в брокер расширения единого входа.
  3. Затем брокер расширения единого входа передает маркер клиентскому приложению MSAL, которое затем отправляет его в защищенный ресурс Microsoft Entra.
  4. Теперь пользователь вошел в приложение, и процесс проверки подлинности завершен.
Единый вход, отличный от MSAL/Browser

Сценарий. Пользователь на устройстве Apple открывает веб-браузер Safari (или любое собственное приложение, отличное от MSAL, которое поддерживает Apple Networking Stack) для входа в защищенный ресурс Microsoft Entra (пример: https://office.com).

Анимация, показывающая поток проверки подлинности высокого уровня приложения, отличного от MSAL, с помощью расширения единого входа.

  1. Использование приложения, отличного от MSAL (например, Safari), пользователь пытается войти в интегрированное приложение Microsoft Entra (пример: office.com) и перенаправляется для получения маркера из идентификатора Microsoft Entra.
  2. Если приложение, отличное от MSAL, разрешено в конфигурации полезных данных MDM, сетевой стек Apple перехватывает запрос проверки подлинности и перенаправляет запрос на брокер расширений единого входа.
  3. Когда расширение единого входа получает перехватанный запрос, PRT отправляется в конечную точку токена Microsoft Entra.
  4. Идентификатор Microsoft Entra проверяет PRT и возвращает маркер для конкретного приложения обратно в расширение единого входа.
  5. Маркер для конкретного приложения предоставляется клиентскому приложению, отличному от MSAL, и клиентское приложение отправляет маркер для доступа к защищенной службе Microsoft Entra.
  6. Теперь пользователь завершил вход и процесс проверки подлинности завершен.

Получение журналов расширения единого входа

Одним из наиболее полезных средств для устранения различных проблем с расширением единого входа являются журналы клиентов с устройства Apple.

Сохранение журналов расширения единого входа из приложения Корпоративный портал

  1. На устройстве macOS дважды щелкните папку "Приложения ".

  2. Дважды щелкните приложение Корпоративный портал.

  3. Когда Корпоративный портал загружается, перейдите в верхнюю строку меню: отчет диагностики help-Save>. Нет необходимости входить в приложение.

    Снимок экрана, на котором показано, как перейти к верхнему меню справки, чтобы сохранить диагностический отчет.

  4. Сохраните архив журналов Корпоративный портал по своему усмотрению (например, "Рабочий стол").

  5. Откройте архив CompanyPortal.zip и откройте файл SSOExtension.log с помощью любого текстового редактора.

Совет

Удобный способ просмотра журналов — использование Visual Studio Code и установка расширения Средства просмотра журналов.

Журналы расширения единого входа в macOS с помощью терминала

Во время устранения неполадок может потребоваться воспроизвести проблему во время восстановления журналов единого входа в режиме реального времени:

  1. На устройстве macOS дважды щелкните папку "Приложения ", а затем дважды щелкните папку "Служебные программы ".

  2. Дважды щелкните приложение терминала .

  3. Когда откроется терминал, введите следующее:

    tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
    

    Примечание.

    Конечный /* указывает, что несколько журналов будут хвосты должны существовать.

    % tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
    ==> /Users/<username>/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/SSOExtension 2022-12-25--13-11-52-855.log <==
    2022-12-29 14:49:59:281 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Handling SSO request, requested operation: 
    2022-12-29 14:49:59:281 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Ignoring this SSO request...
    2022-12-29 14:49:59:282 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Finished SSO request.
    2022-12-29 14:49:59:599 | I | Beginning authorization request
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag browser_sso_interaction_enabled, value in config 1, value type __NSCFNumber
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Feature flag browser_sso_interaction_enabled is enabled
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag browser_sso_disable_mfa, value in config (null), value type (null)
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag disable_browser_sso_intercept_all, value in config (null), value type (null)
    2022-12-29 14:49:59:600 | I | Request does not need UI
    2022-12-29 14:49:59:600 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag admin_debug_mode_enabled, value in config (null), value type (null)
    
  4. При воспроизведении проблемы оставьте окно терминала открытым, чтобы просмотреть выходные данные из хвостовых журналов единого входа .

Экспорт журналов расширений единого входа в iOS

Невозможно просматривать журналы расширения единого входа iOS в режиме реального времени, так как он находится в macOS. Журналы расширений единого входа iOS можно экспортировать из приложения Microsoft Authenticator, а затем просмотреть с другого устройства:

  1. Откройте приложение Microsoft Authenticator:

    Снимок экрана: значок приложения Microsoft Authenticator в iOS.

  2. Нажмите кнопку меню в левом верхнем углу:

    Снимок экрана: расположение кнопки меню в приложении Microsoft Authenticator.

  3. Выберите параметр "Отправить отзыв":

    Снимок экрана: расположение параметра отправки отзывов в приложении Microsoft Authenticator.

  4. Выберите параметр "Проблемы":

    Снимок экрана: расположение проблемы в приложении Microsoft Authenticator.

  5. Нажмите кнопку "Просмотреть диагностические данные":

    Снимок экрана: кнопка просмотра диагностических данных в приложении Microsoft Authenticator.

    Совет

    Если вы работаете с служба поддержки Майкрософт, на этом этапе можно нажать кнопку "Отправить", чтобы отправить журналы в службу поддержки. Это предоставит вам идентификатор инцидента, который можно предоставить вашему служба поддержки Майкрософт контакту.

  6. Нажмите кнопку "Копировать все", чтобы скопировать журналы в буфер обмена устройства iOS. Затем вы можете сохранить файлы журнала в другом месте для проверки или отправить их по электронной почте или другим методам общего доступа к файлам:

    Снимок экрана: параметр

Общие сведения о журналах расширений единого входа

Анализ журналов расширений единого входа — отличный способ устранения неполадок потока проверки подлинности из приложений, отправляющих запросы проверки подлинности в идентификатор Microsoft Entra. Каждый раз, когда вызывается брокер расширения единого входа, ряд результатов действий ведения журнала, и эти действия называются запросами авторизации. Журналы содержат следующие полезные сведения для устранения неполадок:

  • Конфигурация флага компонентов
  • Типы запросов авторизации
    • Собственный MSAL
    • Единый вход, отличный от MSAL/Browser
  • Взаимодействие с цепочкой ключей macOS для операций извлечения и хранения учетных данных
  • Идентификаторы корреляции для событий входа в Microsoft Entra
    • Приобретение PRT
    • Регистрация устройства

Внимание

Журналы расширений единого входа очень подробны, особенно при просмотре операций учетных данных цепочки ключей. По этой причине лучше всего понять сценарий перед просмотром журналов во время устранения неполадок.

Структура журнала

Журналы расширения единого входа разбиты на столбцы. На следующем снимке экрана показана разбивка столбцов журналов:

Снимок экрана: структура столбцов журналов расширений единого входа.

Column Имя столбца Description
1 Локальная дата и время Отображается локальная дата и время
2 I-Information
Предупреждение W-
Ошибка e-Error
Отображение сведений, предупреждений или ошибок
3 Идентификатор потока (TID) Отображает идентификатор потока выполнения приложения брокера единого входа
4 Номер версии MSAL Подключаемый модуль брокера расширения единого входа Microsoft Enterprise создается как приложение MSAL. Этот столбец обозначает версию MSAL, запущенную приложением брокера.
5 версия macOS Отображение версии операционной системы macOS
6 Дата и время в формате UTC Отображается дата и время в формате UTC
7 Идентификатор корреляции Строки в журналах, которые связаны с идентификатором Microsoft Entra ID или операциями цепочки ключей, расширяют столбец даты и времени в формате UTC с идентификатором корреляции
8 Сообщение Отображает подробные сообщения журналов. Большинство сведений об устранении неполадок можно найти, проверив этот столбец.

Конфигурация флага компонента

Во время настройки MDM расширения единого входа Microsoft Enterprise необязательные данные расширения можно отправлять в виде инструкций по изменению поведения расширения единого входа. Эти инструкции по настройке называются флагами компонентов. Конфигурация флага компонентов особенно важна для типов запросов авторизации единого входа, отличных от MSAL/Browser, так как идентификатор пакета может определить, вызывается ли расширение или нет. См . документацию по флагу компонентов. Каждый запрос авторизации начинается с отчета о конфигурации флага компонентов. На следующем снимках экрана приведен пример конфигурации флага компонента:

Снимок экрана: пример конфигурации флага компонента расширения единого входа Майкрософт.

Выноска Флаг функции Description
1 browser_sso_interaction_enabled Браузер, отличный от MSAL или Safari, может загрузить PRT
2 browser_sso_disable_mfa (Теперь не рекомендуется) Во время начальной загрузки учетных данных PRT по умолчанию требуется MFA. Обратите внимание, что эта конфигурация имеет значение NULL , что означает, что конфигурация по умолчанию применяется
3 disable_explicit_app_prompt Заменяет запросы на проверку подлинности для входа из приложений, чтобы уменьшить запросы
4 AppPrefixAllowList Любое приложение, отличное от MSAL с идентификатором пакета, которое начинается с com.micorosoft. , может быть перехвачено и обработано брокером расширений единого входа

Внимание

Флаги компонентов, заданные как NULL , означают, что их конфигурация по умолчанию находится на месте. Дополнительные сведения см. в документации по флагу компонентов

Поток входа в собственное приложение MSAL

В следующем разделе описывается, как проверить журналы расширений единого входа для потока проверки подлинности собственного приложения MSAL. В этом примере мы используем пример приложения MSAL macOS/iOS в качестве клиентского приложения, а приложение вызывает API Microsoft Graph для отображения сведений о входе пользователя.

MsAL native: пошаговое руководство по интерактивному потоку

Для успешного интерактивного входа должны выполняться следующие действия:

  1. Пользователь входит в пример приложения MSAL macOS.
  2. Вызывается брокер расширений единого входа Майкрософт и обрабатывает запрос.
  3. Microsoft SSO Extension Broker проходит процесс начальной загрузки для получения PRT для пользователя, вошедшего в систему.
  4. Сохраните PRT в цепочке ключей.
  5. Проверьте наличие объекта регистрации устройств в идентификаторе Microsoft Entra ID (WPJ).
  6. Возвращает маркер доступа клиентскому приложению для доступа к Microsoft Graph с областью User.Read.

Внимание

Приведенные ниже фрагменты журнала помечены заголовками комментариев //, которые не отображаются в журналах. Они используются для иллюстрации конкретных действий, выполняемых. Мы задокументировали фрагменты журнала таким образом, чтобы помочь в операциях копирования и вставки. Кроме того, примеры журналов были обрезаны, чтобы отобразить только строки важности для устранения неполадок.

Пользователь нажимает кнопку "Вызвать API Microsoft Graph" , чтобы вызвать процесс входа.

Снимок экрана: пример приложения MSAL для macOS, запущенного с помощью кнопки

//////////////////////////
//get_accounts_operation//
//////////////////////////
Handling SSO request, requested operation: get_accounts_operation
(Default accessor) Get accounts.
(MSIDAccountCredentialCache) retrieving cached credentials using credential query
(Default accessor) Looking for token with aliases (null), tenant (null), clientId 00001111-aaaa-2222-bbbb-3333cccc4444, scopes (null)
(Default accessor) No accounts found in default accessor.
(Default accessor) No accounts found in other accessors.
Completed get accounts SSO request with a personal device mode.
Request complete
Request needs UI
ADB 3.1.40 -[ADBrokerAccountManager allBrokerAccounts:]
ADB 3.1.40 -[ADBrokerAccountManager allMSIDBrokerAccounts:]
(Default accessor) Get accounts.
No existing accounts found, showing webview

/////////
//login//
/////////
Handling SSO request, requested operation: login
Handling interactive SSO request...
Starting SSO broker request with payload: {
    authority = "https://login.microsoftonline.com/common";
    "client_app_name" = MSALMacOS;
    "client_app_version" = "1.0";
    "client_id" = "00001111-aaaa-2222-bbbb-3333cccc4444";
    "client_version" = "1.1.7";
    "correlation_id" = "aaaa0000-bb11-2222-33cc-444444dddddd";
    "extra_oidc_scopes" = "openid profile offline_access";
    "instance_aware" = 0;
    "msg_protocol_ver" = 4;
    prompt = "select_account";
    "provider_type" = "provider_aad_v2";
    "redirect_uri" = "msauth.com.microsoft.idnaace.MSALMacOS://auth";
    scope = "user.read";
}

////////////////////////////////////////////////////////////
//Request PRT from Microsoft Authentication Broker Service//
////////////////////////////////////////////////////////////
Using request handler <ADInteractiveDevicelessPRTBrokerRequestHandler: 0x117ea50b0>
(Default accessor) Looking for token with aliases (null), tenant (null), clientId 11112222-bbbb-3333-cccc-4444dddd5555, scopes (null)
Attempting to get Deviceless Primary Refresh Token interactively.
Caching AAD Environements
networkHost: login.microsoftonline.com, cacheHost: login.windows.net, aliases: login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net
networkHost: login.partner.microsoftonline.cn, cacheHost: login.partner.microsoftonline.cn, aliases: login.partner.microsoftonline.cn, login.chinacloudapi.cn
networkHost: login.microsoftonline.de, cacheHost: login.microsoftonline.de, aliases: login.microsoftonline.de
networkHost: login.microsoftonline.us, cacheHost: login.microsoftonline.us, aliases: login.microsoftonline.us, login.usgovcloudapi.net
networkHost: login-us.microsoftonline.com, cacheHost: login-us.microsoftonline.com, aliases: login-us.microsoftonline.com
Resolved authority, validated: YES, error: 0
[MSAL] Resolving authority: Masked(not-null), upn: Masked(null)
[MSAL] Resolved authority, validated: YES, error: 0
[MSAL] Start webview authorization session with webview controller class MSIDAADOAuthEmbeddedWebviewController: 
[MSAL] Presenting web view controller. 

Пример ведения журнала можно разделить на три сегмента:

Сегмент Description
get_accounts_operation Проверяет наличие существующих учетных записей в кэше
- ClientID: идентификатор приложения, зарегистрированный в идентификаторе Microsoft Entra для этого приложения MSAL
ADB 3.1.40 указывает, что версия подключаемого модуля брокера расширений единого входа Microsoft Enterprise
login Брокер обрабатывает запрос для идентификатора Microsoft Entra:
- Обработка интерактивного запроса единого входа...: обозначает интерактивный запрос
- correlation_id. Полезно для перекрестной ссылки на журналы входа на стороне сервера Microsoft Entra
- область действия: область разрешений API User.Read запрашивается из Microsoft Graph
- client_version: версия MSAL, запущенная приложением
- redirect_uri: приложения MSAL используют форматmsauth.com.<Bundle ID>://auth
Запрос PRT Процесс начальной загрузки для получения PRT в интерактивном режиме был инициирован и отрисовывает сеанс единого входа Webview

Служба посредника проверки подлинности Майкрософт
- clientId: 29d9ed98-a469-4536-ade2-f981bc1d605e
— Все запросы PRT выполняются в службу посредника проверки подлинности Майкрософт

Появится контроллер веб-представления единого входа, и пользователю будет предложено ввести имя входа Microsoft Entra (UPN/email)

Снимок экрана: запрос единого входа Apple с введенными сведениями о пользователе и дополнительными сведениями.

Примечание.

Щелкнув i в левом нижнем углу контроллера веб-представления, отображаются дополнительные сведения о расширении единого входа и особенности приложения, вызвавшей его.

Снимок экрана: дополнительные сведения о расширении единого входа на экране запроса. После успешного ввода учетных данных Microsoft Entra следующие записи журнала записываются в журналы расширений единого входа.

SSOExtensionLogs
///////////////
//Acquire PRT//
///////////////
[MSAL] -completeWebAuthWithURL: msauth://microsoft.aad.brokerplugin/?code=(not-null)&client_info=(not-null)&state=(not-null)&session_state=(not-null)
[MSAL] Dismissed web view controller.
[MSAL] Result from authorization session callbackURL host: microsoft.aad.brokerplugin , has error: NO
[MSAL] (Default accessor) Looking for token with aliases (
    "login.windows.net",
    "login.microsoftonline.com",
    "login.windows.net",
    "login.microsoft.com",
    "sts.windows.net"
), tenant (null), clientId 29d9ed98-a469-4536-ade2-f981bc1d605e, scopes (null)
Saving PRT response in cache since no other PRT was found
[MSAL] Saving keychain item, item info Masked(not-null)
[MSAL] Keychain find status: 0
Acquired PRT.

///////////////////////////////////////////////////////////////////////
//Discover if there is an Azure AD Device Registration (WPJ) present //
//and if so re-acquire a PRT and associate with Device ID            //
///////////////////////////////////////////////////////////////////////
WPJ Discovery: do discovery in environment 0
Attempt WPJ discovery using tenantId.
WPJ discovery succeeded.
Using cloud authority from WPJ discovery: https://login.microsoftonline.com/common
ADBrokerDiscoveryAction completed. Continuing Broker Flow.
PRT needs upgrade as device registration state has changed. Device is joined 1, prt is joined 0
Beginning ADBrokerAcquirePRTInteractivelyAction
Attempting to get Primary Refresh Token interactively.
Acquiring broker tokens for broker client id.
Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
Resolved authority, validated: YES, error: 0
Enrollment id read from intune cache : (null).
Handle silent PRT response Masked(not-null), error Masked(null)
Acquired broker tokens.
Acquiring PRT.
Acquiring PRT using broker refresh token.
Requesting PRT from authority https://login.microsoftonline.com/<TenantID>/oauth2/v2.0/token
[MSAL] (Default accessor) Looking for token with aliases (
    "login.windows.net",
    "login.microsoftonline.com",
    "login.windows.net",
    "login.microsoft.com",
    "sts.windows.net"
), tenant (null), clientId (null), scopes (null)
[MSAL] Acquired PRT successfully!
Acquired PRT.
ADBrokerAcquirePRTInteractivelyAction completed. Continuing Broker Flow.
Beginning ADBrokerAcquireTokenWithPRTAction
Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
Resolved authority, validated: YES, error: 0
Handle silent PRT response Masked(not-null), error Masked(null)

//////////////////////////////////////////////////////////////////////////
//Provide Access Token received from Azure AD back to Client Application// 
//and complete authorization request                                    //
//////////////////////////////////////////////////////////////////////////
[MSAL] (Default cache) Removing credentials with type AccessToken, environment login.windows.net, realm TenantID, clientID 00001111-aaaa-2222-bbbb-3333cccc4444, unique user ID dbb22b2f, target User.Read profile openid email
ADBrokerAcquireTokenWithPRTAction succeeded.
Composing broker response.
Sending broker response.
Returning to app (msauth.com.microsoft.idnaace.MSALMacOS://auth) - protocol version: 3
hash: AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
payload: Masked(not-null)
Completed interactive SSO request.
Completed interactive SSO request.
Request complete
Completing SSO request...
Finished SSO request.

На этом этапе в потоке проверки подлинности и авторизации загрузочная загрузка PRT должна отображаться в доступе к цепочке ключей macOS. Ознакомьтесь с проверкой доступа к цепочке ключей для PRT. Пример приложения MSAL macOS использует маркер доступа, полученный от брокера расширений единого входа Майкрософт, для отображения сведений о пользователе.

Затем изучите журналы входа Microsoft Entra на стороне сервера на основе идентификатора корреляции, полученного из журналов расширений единого входа на стороне клиента. Дополнительные сведения см. в журналах входа в идентификаторе Microsoft Entra.

Просмотр журналов входа Microsoft Entra с помощью фильтра идентификатора корреляции
  1. Откройте вход Microsoft Entra для клиента, в котором зарегистрировано приложение.
  2. Выберите вход пользователей (интерактивный).
  3. Нажмите кнопку "Добавить фильтры" и нажмите переключатель "Идентификатор корреляции".
  4. Скопируйте и вставьте идентификатор корреляции, полученный из журналов расширений единого входа, и нажмите кнопку "Применить".

Для потока интерактивного входа MSAL мы ожидаем, что для ресурса службы посредника проверки подлинности Майкрософт будет отображаться интерактивный вход. Это событие, в котором пользователь ввел пароль для загрузки PRT.

Снимок экрана: интерактивные входы пользователей из идентификатора Microsoft Entra с интерактивным входом в службу брокера проверки подлинности Майкрософт.

Существуют также неинтерактивные события входа из-за того, что PRT используется для получения маркера доступа для запроса клиентского приложения. Следуйте журналам входа Microsoft Entra по фильтру идентификатора корреляции, но на шаге 2 выберите "Входы пользователей" (неинтерактивные).

Снимок экрана, показывающий, как расширение единого входа использует PRT для получения маркера доступа для Microsoft Graph.

Атрибут журнала входа Description
Приложение Отображаемое имя регистрации приложения в клиенте Microsoft Entra, где выполняется проверка подлинности клиентского приложения.
Идентификатор приложения Также ссылается на ClientID регистрации приложения в клиенте Microsoft Entra.
Ресурс Ресурс API, к которому клиентское приложение пытается получить доступ. В этом примере ресурс является API Microsoft Graph.
Тип входящего токена Тип входящего маркера первичного маркера обновления (PRT) показывает входной маркер, используемый для получения маркера доступа для ресурса.
Агент пользователя Строка агента пользователя в этом примере показывает, что расширение единого входа Майкрософт — это приложение, обрабатывающее этот запрос. Полезный индикатор использования расширения единого входа и запрос проверки подлинности брокера.
Библиотека проверки подлинности приложений Microsoft Entra Когда приложение MSAL использует сведения о библиотеке и платформе, написаны здесь.
Сведения о области Oauth Сведения о области Oauth2, запрошенные для маркера доступа. (User.Read,profile,openid,email).
Пошаговое руководство по автоматическому потоку MSAL Native

Через некоторое время маркер доступа больше не будет действительным. Таким образом, если пользователь щелкает кнопку вызова API Microsoft Graph. Расширение единого входа пытается обновить маркер доступа с уже приобретенным PRT.

SSOExtensionLogs
/////////////////////////////////////////////////////////////////////////
//refresh operation: Assemble Request based on User information in PRT  /  
/////////////////////////////////////////////////////////////////////////
Beginning authorization request
Request does not need UI
Handling SSO request, requested operation: refresh
Handling silent SSO request...
Looking account up by home account ID dbb22b2f, displayable ID auth.placeholder-61945244__domainname.com
Account identifier used for request: Masked(not-null), auth.placeholder-61945244__domainname.com
Starting SSO broker request with payload: {
    authority = "https://login.microsoftonline.com/<TenantID>";
    "client_app_name" = MSALMacOS;
    "client_app_version" = "1.0";
    "client_id" = "00001111-aaaa-2222-bbbb-3333cccc4444";
    "client_version" = "1.1.7";
    "correlation_id" = "aaaa0000-bb11-2222-33cc-444444dddddd";
    "extra_oidc_scopes" = "openid profile offline_access";
    "home_account_id" = "<UserObjectId>.<TenantID>";
    "instance_aware" = 0;
    "msg_protocol_ver" = 4;
    "provider_type" = "provider_aad_v2";
    "redirect_uri" = "msauth.com.microsoft.idnaace.MSALMacOS://auth";
    scope = "user.read";
    username = "auth.placeholder-61945244__domainname.com";
}
//////////////////////////////////////////
//Acquire Access Token with PRT silently//
//////////////////////////////////////////
Using request handler <ADSSOSilentBrokerRequestHandler: 0x127226a10>
Executing new request
Beginning ADBrokerAcquireTokenSilentAction
Beginning silent flow.
[MSAL] Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
[MSAL] (Default cache) Removing credentials with type AccessToken, environment login.windows.net, realm <TenantID>, clientID 00001111-aaaa-2222-bbbb-3333cccc4444, unique user ID dbb22b2f, target User.Read profile openid email
[MSAL] (MSIDAccountCredentialCache) retrieving cached credentials using credential query
[MSAL] Silent controller with PRT finished with error Masked(null)
ADBrokerAcquireTokenWithPRTAction succeeded.
Composing broker response.
Sending broker response.
Returning to app (msauth.com.microsoft.idnaace.MSALMacOS://auth) - protocol version: 3
hash: AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
payload: Masked(not-null)
Completed silent SSO request.
Request complete
Completing SSO request...
Finished SSO request.

Пример ведения журнала можно разделить на два сегмента:

Сегмент Description
refresh Брокер обрабатывает запрос для идентификатора Microsoft Entra:
- Обработка автоматического единого входа...: обозначает автоматический запрос
- correlation_id. Полезно для перекрестной ссылки на журналы входа на стороне сервера Microsoft Entra
- область действия: область разрешений API User.Read запрашивается из Microsoft Graph
- client_version: версия MSAL, запущенная приложением
- redirect_uri: приложения MSAL используют форматmsauth.com.<Bundle ID>://auth

Обновление имеет заметные отличия от полезных данных запроса:
- центр: содержит конечную точку URL-адреса клиента Microsoft Entra, а не общую конечную точку.
- home_account_id. Отображение учетной записи пользователя в формате <UserObjectId.<>Идентификатор клиента>
- имя пользователя: хэшированные формат имени участника-пользователя auth.placeholder-XXXXXXXX__domainname.com
Обновление PRT и получение маркера доступа Эта операция обновляет PRT и обновляет его при необходимости, прежде чем вернуть маркер доступа обратно вызывающему клиентскому приложению.

Мы снова можем взять идентификатор корреляции, полученный из журналов расширения единого входа на стороне клиента, и перекрестную ссылку на журналы входа Microsoft Entra на стороне сервера.

Снимок экрана: запрос автоматического входа Microsoft Entra с помощью подключаемого модуля Enterprise SSO Broker.

Вход Microsoft Entra отображает идентичные сведения о ресурсе Microsoft Graph из операции входа в предыдущем интерактивном разделе входа.

Поток входа приложения, отличного от MSAL/Browser SSO

В следующем разделе описывается, как проверить журналы расширений единого входа для потока проверки подлинности приложений, отличных от MSAL/Browser. В этом примере мы используем браузер Apple Safari в качестве клиентского приложения, а приложение вызывает веб-приложение Office.com (OfficeHome).

Пошаговое руководство по единому входу, отличному от MSAL/Browser

Для успешного входа должны выполняться следующие действия:

  1. Предположим, что пользователь, который уже прошел процесс начальной загрузки, имеет существующий PRT.
  2. На устройстве с развернутой брокером расширений единого входа Microsoft проверяются флаги настроенных компонентов, чтобы убедиться, что приложение может обрабатываться расширением единого входа.
  3. Так как браузер Safari соответствует Apple Networking Stack, расширение единого входа пытается перехватить запрос проверки подлинности Microsoft Entra.
  4. PRT используется для получения маркера запрашиваемого ресурса.
  5. Если устройство зарегистрировано в Microsoft Entra, оно передает идентификатор устройства вместе с запросом.
  6. Расширение единого входа заполняет заголовок запроса браузера для входа в ресурс.

В следующих журналах расширения единого входа на стороне клиента показано, что запрос обрабатывается прозрачно брокером расширения единого входа для выполнения запроса.

SSOExtensionLogs
Created Browser SSO request for bundle identifier com.apple.Safari, cookie SSO include-list (
), use cookie sso for this app 0, initiating origin https://www.office.com
Init MSIDKeychainTokenCache with keychainGroup: Masked(not-null)
[Browser SSO] Starting Browser SSO request for authority https://login.microsoftonline.com/common
[MSAL] (Default accessor) Found 1 tokens
[Browser SSO] Checking PRTs for deviceId 73796663
[MSAL] [Browser SSO] Executing without UI for authority https://login.microsoftonline.com/common, number of PRTs 1, device registered 1
[MSAL] [Browser SSO] Processing request with PRTs and correlation ID in headers (null), query aaaa0000-bb11-2222-33cc-444444dddddd
[MSAL] Resolving authority: Masked(not-null), upn: Masked(null)
[MSAL] No cached preferred_network for authority
[MSAL] Caching AAD Environements
[MSAL] networkHost: login.microsoftonline.com, cacheHost: login.windows.net, aliases: login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net
[MSAL] networkHost: login.partner.microsoftonline.cn, cacheHost: login.partner.microsoftonline.cn, aliases: login.partner.microsoftonline.cn, login.chinacloudapi.cn
[MSAL] networkHost: login.microsoftonline.de, cacheHost: login.microsoftonline.de, aliases: login.microsoftonline.de
[MSAL] networkHost: login.microsoftonline.us, cacheHost: login.microsoftonline.us, aliases: login.microsoftonline.us, login.usgovcloudapi.net
[MSAL] networkHost: login-us.microsoftonline.com, cacheHost: login-us.microsoftonline.com, aliases: login-us.microsoftonline.com
[MSAL] Resolved authority, validated: YES, error: 0
[MSAL] Found registration registered in login.microsoftonline.com, isSameAsRequestEnvironment: Yes
[MSAL] Passing device header in browser SSO for device id 43cfaf69-0f94-4d2e-a815-c103226c4c04
[MSAL] Adding SSO-cookie header with PRT Masked(not-null)
SSO extension cleared cookies before handling request 1
[Browser SSO] SSO response is successful 0
[MSAL] Keychain find status: 0
[MSAL] (Default accessor) Found 1 tokens
Request does not need UI
[MSAL] [Browser SSO] Checking PRTs for deviceId 73796663
Request complete
Компонент журнала расширения единого входа Description
Созданный запрос единого входа в браузере Все запросы единого входа, отличные от MSAL/Browser, начинаются с следующей строки:
- идентификатор пакета: идентификатор пакета: com.apple.Safari
- источник инициализации: веб-URL-адрес браузера обращается перед нажатием одного из URL-адресов входа для идентификатора Microsoft Entra (https://office.com)
Запуск запроса единого входа браузера для центра Разрешает количество PR-адресов и зарегистрировано ли устройство:
https://login.microsoftonline.com/commonчисло PRTs 1, зарегистрированное устройство 1
Идентификатор корреляции [Единый вход в браузере] Обработка запроса с помощью PRT и идентификатора корреляции в заголовках (NULL), query CorrelationID>.< Этот идентификатор важен для перекрестной ссылки на журналы входа на стороне сервера Microsoft Entra.
Регистрация устройств При необходимости, если устройство зарегистрировано в Microsoft Entra, расширение единого входа может передать заголовок устройства в запросах единого входа в браузере:
— найденная регистрация, зарегистрированная в
- login.microsoftonline.com, isSameAsRequestEnvironment: Да

Передача заголовка устройства в едином входе браузера для идентификатора устройства 43cfaf69-0f94-4d2e-a815-c103226c4c04

Затем используйте идентификатор корреляции, полученный из журналов расширений единого входа в браузере, чтобы перекрестно ссылаться на журналы входа Microsoft Entra.

Снимок экрана: перекрестная ссылка в журналах входа Microsoft Entra для расширения единого входа в браузере.

Атрибут журнала входа Description
Приложение Отображаемое имя регистрации приложения в клиенте Microsoft Entra, где выполняется проверка подлинности клиентского приложения. В этом примере отображаемое имя — OfficeHome.
Идентификатор приложения Также ссылается на ClientID регистрации приложения в клиенте Microsoft Entra.
Ресурс Ресурс API, к которому клиентское приложение пытается получить доступ. В этом примере ресурс — веб-приложение OfficeHome .
Тип входящего токена Тип входящего маркера первичного маркера обновления (PRT) показывает входной маркер, используемый для получения маркера доступа для ресурса.
Обнаружен метод проверки подлинности На вкладке "Сведения о проверке подлинности" значение подключаемого модуля единого входа Microsoft Entra является полезным индикатором того, что расширение единого входа используется для упрощения запроса единого входа в браузере
Версия расширения единого входа Microsoft Entra На вкладке "Дополнительные сведения" это значение отображает версию приложения брокера расширения единого входа Microsoft Enterprise.
Идентификатор устройства Если устройство зарегистрировано, расширение единого входа может передать идентификатор устройства для обработки запросов проверки подлинности устройства.
Операционная система Отображает тип операционной системы.
Соответствует Расширение единого входа может упростить политики соответствия требованиям, передав заголовок устройства. Для этого необходимы следующие компоненты:
- Регистрация устройств Microsoft Entra
- Управление MDM
- Соответствие intune или Intune Partner
Управляемый Указывает, что устройство находится под управлением.
Тип соединения macOS и iOS, если зарегистрированы, может быть только типом: Microsoft Entra зарегистрировано.

Совет

Если вы используете Jamf Connect, рекомендуется следовать последнему руководству Jamf по интеграции Jamf Connect с идентификатором Microsoft Entra. Рекомендуемый шаблон интеграции гарантирует правильность работы Jamf Connect с политиками условного доступа и Защита идентификации Microsoft Entra.

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