Чтобы Azure AD определил, что устройство управляется для удовлетворения требований условного доступа, необходимо использовать Brokered Authentication .Это можно сделать, указав AD_CREDENTIALS_AUTO
(что вы сделали), добавив msauth
к LSApplicationQueriesSchemes
(что вы сделали) и сконфигурировав соответствующую схему обратного вызова URI для вашего приложения (что вы также сделали).
В качестве посредника будет использовано приложение Microsoft Authenticator .Если он не установлен (что определяет среда ADALios, проверив, есть ли приложение, отвечающее схеме msauth
url), библиотека ADAL по умолчанию отобразит форму входа в веб-представлении в вашем веб-представлении.app.
Поскольку ваше приложение не может определить, является ли устройство управляемым, вы получите результат «проверка подлинности прошла успешно, но ваше устройство не зарегистрировано».
После установки приложения Microsoft Authenticator выувидит, что он открывается в ответ на запрос аутентификации.Это приложение может определять статус регистрации вашего устройства, и вы должны затем вернуться к своему приложению с успешным токеном.
Требование установить приложение для проверки подлинности может быть более явно указано в документации библиотеки, но оноупоминается:
Брокерская аутентификация
Если вашему приложению требуется поддержка условного доступа или аутентификации сертификата (в настоящее время в режиме предварительного просмотра), вы должнынастройте свой AuthenticationContext и redirectURI, чтобы иметь возможность общаться с приложением Azure Authenticator .