MsalError Класс

Определение

Код ошибки, возвращаемый как свойство в MsalException

public static class MsalError
type MsalError = class
Public Class MsalError
Наследование
MsalError

Поля

Имя Описание
AccessDenied

Доступ запрещен.

AccessingWsMetadataExchangeFailed

Сбой доступа к метаданным WS Exchange.

Что происходит?

Вы попытались использовать AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) и учетная запись является федеративной учетной записью.

Смягчение последствий

Нет. Метаданные WS не найдены или не соответствуют ожидаемому.
AccessTokenTypeMissing

Что происходит?

Ответ конечной точки токена не содержит параметр token_type.

Смягчение последствий

Это происходит, если поставщик удостоверений (AAD, B2C, ADFS и т. д.) не включал тип маркера доступа в ответ маркера. Проверьте конфигурацию поставщика удостоверений.
ActivityRequired

В Android необходимо вызвать AcquireTokenInteractiveParameterBuilder.WithParentActivityOrWindow(object) передачу действия. См. https://aka.ms/msal-interactive-android

AdfsNotSupportedWithBroker

Что происходит?

Брокер настроен с помощью центра ADFS, однако он не поддерживает среды ADFS.

Смягчение последствий

Брокер не поддерживает среды ADFS.
AndroidBrokerOperationFailed

Не удалось завершить операцию Android Broker

AndroidBrokerSignatureVerificationFailed

Не удалось проверить подпись android Broker

AuthenticationCanceledError

Проверка подлинности отменена.

Что происходит?

Пользователь отменил проверку подлинности, например закрыв диалоговое окно проверки подлинности.

Смягчение последствий

Нет, вы не можете получить маркер для вызова защищенного API. Может потребоваться сообщить пользователю
AuthenticationFailed

Не удалось пройти проверку подлинности.

Что происходит?

Сбой проверки подлинности. Например, пользователь не ввел правильный пароль

Смягчение последствий

Сообщите пользователю повторить попытку.
AuthenticationUiFailed

Не удалось выполнить запрос из-за неизвестного сбоя в потоке пользовательского интерфейса.*

Смягчение последствий

Сообщите пользователю.
AuthenticationUiFailedError

Не удалось выполнить запрос из-за сбоя в потоке пользовательского интерфейса.

Что происходит?

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

Смягчение последствий

Если исключение содержит причину, вы можете сообщить пользователю. Это может быть, например, браузер, реализующий вкладки chrome, отсутствует на телефоне Android (это только пример: это исключение может применяться к другим платформам, а также)
AuthorityHostMismatch

Облако (узел URL-адреса центра), определенный на уровне приложения, не может отличаться от облака на уровне запроса.

Что происходит?

Вы не определили центр на уровне приложения, поэтому по умолчанию используется общедоступное облако (login.microsoft.com), но центр на уровне запроса предназначен для другого облака. На уровне запроса можно изменить только клиент.

Смягчение последствий

Добавить. WithAuthority("https://login.windows-ppe.net/common) на уровне приложения и укажите клиент на уровне запроса: WithAuthority("https://login.windows-ppe.net/1234-567-890-12345678).
AuthorityTenantSpecifiedTwice

Что происходит?

Вы дважды указали клиент — один раз в WithAuthority() и один раз с помощью WithTenant()

Смягчение последствий

Укажите клиент один раз.
AuthorityTypeMismatch

Что происходит?

Центр, настроенный на уровне приложения, отличается от центра, настроенного на уровне запроса.

Смягчение последствий

Убедитесь, что используется тот же тип центра
AuthorityValidationFailed

Сбой проверки центра.

Что происходит?

Проверка центра завершилась ошибкой. Это может быть связано с тем, что центр не соответствует стандарту OIDC или может возникнуть проблема безопасности.

Смягчение последствий

Используйте другой центр. Если вы абсолютно уверены, что вы можете доверять центру, который можно использовать WithAuthority(AadAuthorityAudience, Boolean) для передачи validateAuthority параметра false (не рекомендуется)
B2CAuthorityHostMismatch

Узел центра B2C не совпадает с тем, который используется при создании клиентского приложения.

BrokerApplicationRequired

Что происходит?

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

Смягчение последствий

Установка приложения брокера, например Authenticator, из хранилища приложений
BrokerDoesNotSupportPop

Что происходит?

Запрос включает брокер и настроено подтверждение владения, но брокер не поддерживает подтверждение владения

Смягчение последствий

настройте только проверку подлинности для общедоступных клиентов в windows.
BrokerNonceMismatch

Неисправный ответ брокера не соответствует запросу nonce, отправляемого MSAL.NET для брокера >iOS = v6.3.19

BrokerRequiredForPop

Что происходит?

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

Смягчение последствий

Включите брокер при настройке подтверждения владения.
BrokerResponseHashMismatch

Хэш ответа брокера не совпадал

BrokerResponseReturnedError

Ответ брокера вернул ошибку

CannotAccessUserInformationOrUserNotDomainJoined

Не удается получить доступ к сведениям о пользователе или пользователь не является доменом пользователя.

Что происходит?

Вы пытались использовать AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>) , но пользователь не является пользователем домена (компьютер не присоединен к домену или AAD присоединен)
CannotInvokeBroker

MSAL не может вызвать брокера. Возможные причины: брокер не установлен на устройстве пользователя, или возникли проблемы с UiParent или CallerViewController null. См. https://aka.ms/msal-brokers

CannotSwitchBetweenImdsVersionsForPreview

Система уже вернула IMDS версии 1 и может получать только маркеры носителя. Его необходимо перезапустить, чтобы получить токены PoP mTLS.

CertificateNotRsa

Что происходит?

Предоставленный сертификат не имеет типа RSA.

Смягчение последствий

Используйте сертификат RSA.
CertWithoutPrivateKey

Что происходит?

Указанный сертификат не имеет закрытого ключа.

Смягчение последствий

Убедитесь, что сертификат имеет закрытый ключ.
ClientCredentialAuthenticationTypeMustBeDefined

Что происходит?

Вы настроили проверку подлинности конфиденциального клиента MSAL без типа проверки подлинности (сертификат, секрет, утверждение клиента)

Смягчение последствий

Любой вызов ConfidentialClientApplicationBuilder.WithClientSecret, ConfidentialClientApplicationBuilder.WithCertificate, ConfidentialClientApplicationBuilder.WithClientAssertion
ClientCredentialAuthenticationTypesAreMutuallyExclusive

Что происходит?

Вы настроили проверку подлинности конфиденциального клиента MSAL с несколькими типами проверки подлинности (сертификат, секрет, утверждение клиента)
CodeExpired

Что происходит?

В контексте потока кода устройства (см https://aka.ms/msal-net-device-code-flow). эту ошибку, когда истек срок действия кода устройства до входа пользователя на другое устройство (обычно это происходит через 15 минут).

Смягчение последствий

Нет. Сообщите пользователю, что им потребовалось слишком много времени для входа по указанному URL-адресу и введите предоставленный код.
CombinedUserAppCacheNotSupported

Использование объединенного неструктурированного хранилища, например файла, для хранения маркеров приложений и пользователей не поддерживается. Используйте секционированные кэш маркеров (например, распределенный кэш, например Redis) или отдельные файлы для кэшей маркеров приложения и пользователя. См https://aka.ms/msal-net-token-cache-serialization . раздел .

CryptographicError

При попытке использовать предоставленный сертификат произошло исключение шифрования.

CurrentBrokerAccount

Этот код ошибки возвращается из AcquireTokenSilent(IEnumerable<String>, IAccount) вызовов, когда OperatingSystemAccount пользователь передается в качестве account параметра. Только некоторые брокеры (WAM) могут входить в систему текущего пользователя.

Смягчение последствий

В Windows используйте брокер через . WithBroker(true), используйте другую учетную запись или вызов в противном случаеAcquireTokenInteractive(IEnumerable<String>)
CustomMetadataInstanceOrUri

Что происходит?

Вы настроили собственные метаданные экземпляра с помощью URI и строки. Поддерживается только один.

Смягчение последствий

Вызов с помощью WithInstanceDiscoveryMetadata только один раз. Дополнительные сведения см. в статье https://aka.ms/msal-net-custom-instance-metadata.
CustomWebUiRedirectUriMismatch

Код ошибки, используемый при возврате универсального кода ресурса (URI) CustomWebUI, но не соответствует центру и Абсолютному Пути настроенного URI перенаправления.

CustomWebUiReturnedInvalidUri

Код ошибки, используемый при ICustomWebUi возврате универсального кода ресурса (URI), но недопустимый — он имеет значение NULL или не имеет кода. Попробуйте создать исключение, если не удается перехватить универсальный код ресурса (URI), содержащий код.

DefaultRedirectUriIsInvalid

Сбой проверки RedirectUri.

DeviceCertificateNotFound

Сертификат устройства не найден.

DuplicateQueryParameterError

Повторяющийся параметр запроса найден в extraQueryParameters.

Что происходит?

Вы использовали extraQueryParameter переопределение операций приобретения маркеров в общедоступном клиенте и конфиденциальном клиентском приложении и передаете параметр, который уже присутствует в URL-адресе (либо потому, что он был другим способом, либо библиотека добавила его).

Устранение рисков [разработка приложений]

RemoveAccount повторяющийся параметр из переопределения получения маркера.
EncodedTokenTooLong

Слишком длинный закодированный маркер.

Что происходит

При вызове конфиденциального клиентского приложения утверждение клиента, созданное MSAL, превышает максимальную длину маркера JWT.
ExactlyOneScopeExpected

Ожидается ровно одна область.

ExperimentalFeature

Что происходит?

Вы пытаетесь использовать функцию, которая была помечена как экспериментальная

Смягчение последствий

При создании PublicClientApplication или ConfidentialClientApplication используйте . Параметр WithExperimentalFeatures(). Подробные сведения см. в разделе https://aka.ms/msal-net-experimental-features.
FailedToAcquireTokenSilentlyFromBroker

Не удалось автоматически получить маркер. Используется в сценариях брокера.

Что происходит

Вы вызвали или ваше AcquireTokenSilent(IEnumerable<String>, String) мобильное приложение (Xamarin) использует брокер AcquireTokenSilent(IEnumerable<String>, IAccount) (Microsoft Authenticator или Microsoft Корпоративный портал), но брокер не смог получить маркер автоматически.

Смягчение последствий

Вызов AcquireTokenInteractive(IEnumerable<String>)
FailedToGetBrokerResponse

Что происходит?

Вы пытаетесь пройти проверку подлинности с помощью брокера, но MSAL не может прочитать ответ брокера.

Смягчение последствий

В настоящее время установленный брокер может не поддерживать MSAL. Xamarin необходимо убедиться, что вы установили Корпоративный портал Intune (5.0.4689.0 или более поздней версии) или Microsoft Authenticator (6.2001.0140 или больше). см. "https://aka.ms/Brokered-Authentication-for-Android
FailedToRefreshToken

Не удалось обновить маркер.

Что происходит?

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

Смягчение последствий

Если вы находитесь в общедоступном клиентском приложении, поддерживающем интерактивное взаимодействие, отправьте интерактивный запрос AcquireTokenInteractive(IEnumerable<String>). В противном случае используйте другой метод для получения маркеров.
FederatedServiceReturnedError

Возвращена ошибка федеративной службы.

Смягчение последствий

Нет. Федеративная служба вернула ошибку. Вы можете попытаться просмотреть текст исключения для лучшего понимания ошибки и выбрать устранение неполадок.
ForceRefreshNotCompatibleWithTokenHash

Что произошло?

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

Смягчение:

— Убедитесь, что значение "force_refresh" не имеет значения true при использовании хэша маркера. — Проверьте параметры запроса, чтобы убедиться, что они не конфликтуют. — Если требуется хэширование маркеров, разрешите использование кэшированного маркера вместо принудительного обновления.
GetUserNameFailed

Не удалось получить имя пользователя.

HttpListenerError

Произошла ошибка HttpListenerException при прослушивании системного браузера, чтобы завершить вход.

HttpStatusCodeNotOk

Код ошибки, используемый при возврате HTTP-ответа от 200 (ОК)

HttpStatusNotFound

Код ошибки, используемый при возврате HTTP-ответа HttpStatusCode.NotFound

ImdsServiceError

Представляет код ошибки, возвращаемый при сбое операции IMDS.

InitializeProcessSecurityError

Что происходит?

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

Смягчение последствий

Сведения об устранении неполадок см. в статье https://aka.ms/msal-net-wam .
IntegratedWindowsAuthenticationFailed

Это может произойти, если в среде ADFS возникает проблема с конфигурацией, в которой выполняется проверка подлинности. Дополнительные сведения см. в статье https://aka.ms/msal-net-iwa-troubleshooting

IntegratedWindowsAuthNotSupportedForManagedUser

Встроенная Windows аутентификация поддерживается только для федеративных пользователей

InteractionRequired

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

Смягчение:

Если приложение является вызовомAcquireTokenInteractive, выполните интерактивную IPublicClientApplication проверку подлинности. Если приложение является вероятностью ConfidentialClientApplication того, что член утверждений исключения не пуст. См. сведения Claims о правильном устранении рисков
InternalCacheDisabled

Что произошло?

Был вызван зависимый от кэша API, но внутренний кэш маркеров MSAL отключен через DisableInternalCacheOptions. Это может происходить с такими API, как AcquireTokenSilent(IEnumerable<String>, IAccount) и AcquireTokenInLongRunningProcess(...).

Смягчение последствий

Используйте поток проверки подлинности, который не зависит от внутреннего кэша MSAL, например AcquireTokenByRefreshToken(IEnumerable<String>, String) с маркером обновления, полученным из GetRefreshToken(AuthenticationResult), или используйте другой интерактивный поток, как это подходит для вашего приложения.
InternalError

Внутренняя ошибка

InvalidAdalCacheMultipleRTs

Что происходит?

Кэш ADAL недопустим, так как он содержит несколько записей маркера обновления для одного пользователя.

Смягчение последствий

Удалите кэш ADAL. Если вы не поддерживаете кэш ADAL, это может быть ошибка в MSAL.
InvalidAuthority

Недопустимый центр

Что происходит

Когда библиотека пытается обнаружить центр и получить конечные точки, необходимые для получения маркера, он получил код HTTP или непредвиденный ответ.

исправление

Убедитесь, что центр, настроенный для приложения, или передан некоторые переопределения маркеров получения маркеров, поддерживающих переопределение центра, правильно
InvalidAuthorityType

Недопустимый тип центра. MSAL.NET не знает, как взаимодействовать с центром, указанным при создании приложения.

Смягчение последствий

Использование другого центра
InvalidAuthorizationUri

Uri авторизации был перехвачен, но его нельзя проанализировать. Дополнительные сведения см. в журнале.

InvalidCertificate

Сертификат, полученный от сервера Imds, недопустим.

InvalidClient

Azure ошибка службы AD, указывающая на проблему конфигурации.

Смягчение последствий

Дополнительные сведения см. в сообщении об ошибке, а затем на портале регистрации приложений см https://aka.ms/msal-net-invalid-client . дополнительные сведения.
InvalidClientAssertion

Возвращается, когда WithClientAssertion делегат предоставляет или пустую null строку JWT.

Смягчение

Убедитесь, что делегат возвращает непустую, закодированную в кодировке Base-64 JWT.
InvalidClientCredentialConfiguration

Что происходит?

Вы настроили статический сертификат (WithCertificate(X509Certificate2)) и динамический поставщик сертификатов (WithCertificate(Func)).

Смягчение последствий

Выберите один подход для предоставления сертификата клиента.
InvalidCredentialMaterial

Что произошло?

Настроенный тип учетных данных несовместим с запрошенным режимом проверки подлинности. Например, секрет клиента нельзя использовать с проверкой подлинности mTLS или SendCertificateOverMtls так как mTLS требуется сертификат для привязки маркера к транспорту TLS.

Смягчение:

Используйте учетные данные на основе сертификатов с помощью WithCertificate()делегата, возвращающего с ClientSignedAssertionTokenBindingCertificate помощью mTLS, необходимого для проверки владения.
InvalidGrantError

Код ошибки протокола OAuth2 уровня "Стандартный". Он указывает, что приложению необходимо предоставить пользовательский интерфейс пользователю, чтобы пользователь выполняет интерактивное действие, чтобы получить новый маркер.

Смягчение:

Если приложение является вызовомAcquireTokenInteractive, выполните интерактивную IPublicClientApplication проверку подлинности. Если приложение является вероятностью ConfidentialClientApplication того, что член утверждений исключения не пуст. См. сведения MsalServiceException.Claims о правильном устранении рисков
InvalidInstance

Ошибка службы AAD, указывающая, что настроенный центр не существует

InvalidJsonClaimsFormat

Что происходит?

Вы настроили запрос утверждений, но строка утверждений не в формате JSON

Смягчение последствий

Убедитесь, что параметр утверждений является допустимым JSON. Проверьте внутреннее исключение для получения сведений о синтаксическом анализе JSON.
InvalidJwtError

JWT недействительна.

Что происходит?

Библиотека ожидала JWT (например, маркер из кэша или получен из stS), но формат недопустим.

Смягчение последствий

Убедитесь, что кэш токенов не был изменен
InvalidManagedIdentityEndpoint

Недопустимая конечная точка управляемого удостоверения.

InvalidManagedIdentityIdType

Источник управляемого удостоверения не выбирает определенный тип идентификатора.

InvalidManagedIdentityResponse

Необходимое значение отсутствует в ответе управляемого удостоверения.

InvalidOwnerWindowType

Недопустимый тип окна владельца.

Что происходит?

Вы использовали, "AcquireTokenInteractiveParameterBuilder.WithParentActivityOrWindow(object) но переданный параметр недопустим.

Remediation

В .NET Standard ожидаемый объект находится Activity в Android, в iOS, UIViewControllerNSWindow в MAC и IWin32WindowIntPr Windows. Если вы находитесь в приложении WPF, можно использовать WindowInteropHelper(wpfControl).Handle для получения дескриптора окна, связанного с элементом управления WPF
InvalidRequest

Запрос недопустим.

Что происходит?

Это может произойти, так как вы используете метод получения маркера, который несовместим с центром. Например, вы вызвали AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) , но вы использовали центр, заканчивающийся "/common" или "/потребители", так как для этого требуется клиентская власть или "/организации".

Смягчение последствий

Настройте центр на используемый метод AcquireTokenXX (не используйте "common" или "потребители" с AcquireTokenByUsernamePassword(IEnumerable<String>, String, String)AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>)
InvalidTokenProviderResponseValue

Необходимое значение отсутствует в ответе поставщика маркеров

InvalidUserInstanceMetadata

Что происходит?

Вы настроили собственные метаданные экземпляра, но предоставленный json, как представляется, является недопустимым.

Смягчение последствий

Пример https://aka.ms/msal-net-custom-instance-metadata допустимого json, который можно использовать.
JsonParseError

Сбой синтаксического анализа JSON.

Что происходит?

Большой двоичный объект JSON, считываемый из кэша маркеров или полученный из stS, не был синтаксический анализ. Это может произойти при чтении кэша маркеров или получении идентификатора IDToken из stS.

Смягчение последствий

Убедитесь, что кэш токенов не был изменен
LinuxXdgOpen

Что происходит?

MSAL попыталась открыть браузер в Linux с помощью средств xdg-open, gnome-open или kfmclient, но не удалось.

Смягчение последствий

Убедитесь, что вы можете открыть страницу с помощью средства xdg-open. Подробные сведения см. в разделе https://aka.ms/msal-net-os-browser.
LoopbackRedirectUri

Что происходит?

Текущий URL-адрес перенаправления не является URL-адресом обратного цикла.

Смягчение последствий

Чтобы использовать браузер ОС, URL-адрес обратного цикла с портом или без него, необходимо настроить как во время регистрации приложения, так и при инициализации объекта IPublicClientApplication. Подробные сведения см. в разделе https://aka.ms/msal-net-os-browser.
LoopbackResponseUriMismatch

Что происходит?

MSAL перехватил URI, возможно, содержащий код авторизации, но не соответствует настроенного URL-адреса перенаправления.

Смягчение последствий

Если вы используете реализацию ICustomWebUi, убедитесь, что URL-адрес перенаправления совпадает с URL-адресом, содержащим код проверки подлинности. Если вы не используете ICustomWebUI, это может быть злоумышленник в середине атаки.
ManagedIdentityAllSourcesUnavailable

Все источники управляемых удостоверений недоступны.

ManagedIdentityRequestFailed

Получено сообщение об ошибке управляемого удостоверения.

ManagedIdentityResponseParseFailure

Получено сообщение об ошибке управляемого удостоверения.

ManagedIdentityUnreachableNetwork

Конечная точка управляемого удостоверения недоступна.

MissingFederationMetadataUrl

URL-адрес метаданных федерации отсутствует для федеративного пользователя.

MissingManagedIdentityEnvVar

Управляемое удостоверение отсутствует требуемая переменная среды.

MissingPassiveAuthEndpoint

В конфигурации OIDC центра не найдена конечная точка пассивной проверки подлинности

Что происходит?

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

исправление

Убедитесь, что центр, настроенный для приложения, или передан некоторые переопределения маркеров получения маркеров, поддерживающих переопределение центра, правильно
MissingTenantedAuthority

Отсутствует клиентская служба. MSAL.NET требуется клиентская служба (т. е. центр с идентификатором клиента) для указания mTLS при создании приложения, но не было предоставлено.

Смягчение последствий

Убедитесь, что в конфигурации приложения указывается клиентская служба, которая включает в себя определенный идентификатор клиента. Например, используйте "https://login.microsoftonline.com/{tenantId}" или аналогичную структуру URL-адресов.
MtlsBearerWithoutRegion

Что произошло?

Средство носителя mTLS настроено, но регион не указан.

Смягчение последствий

Убедитесь, что конфигурация AzureRegion задана при использовании носителя mTLS, так как для нее требуется региональная конечная точка.
MtlsCertificateNotProvided

Что произошло?

Проверка владения mTLS (mTLS PoP) настроена, но сертификат не был предоставлен.

Смягчение последствий

Убедитесь, что допустимый сертификат предоставляется в конфигурации при использовании MTLS PoP, так как он необходим для безопасной проверки подлинности.
MtlsNotSupportedForManagedIdentity

Что произошло?

MTLS не поддерживается для проверки подлинности управляемого удостоверения.
MtlsPopNotSupportedForEnvironment

Что произошло?

Подтверждение владения mTLS (mTLS PoP) не поддерживается для указанной конечной облачной среды.

Смягчение:

Используйте поддерживаемую альтернативную конечную точку для суверенной облачной среды.
MtlsPopTokenNotSupportedinImdsV1

Маркеры poP mTLS не поддерживаются в IMDS версии 1.

MtlsPopWithoutRegion

Что произошло?

Проверка владения mTLS (mTLS PoP) настроена, но регион не указан.

Смягчение последствий

Убедитесь, что конфигурация AzureRegion задана при использовании MTLS PoP, так как для нее требуется региональная конечная точка.
MultipleAccountsForLoginHint

Этот код ошибки указывает, что несколько учетных записей были найдены с одинаковым указанием для входа, и MSAL не может выбрать один. Используйте WithAccount(IAccount) для указания учетной записи

MultipleTokensMatchedError

Были сопоставлены несколько токенов.

Что происходит?

Это исключение происходит в случае, когда приложения управляют несколькими удостоверениями, при вызове AcquireTokenSilent(IEnumerable<String>, IAccount) или одном из его переопределения, а кэш маркеров пользователя содержит несколько маркеров для этого клиентского приложения и указанной учетной записи, но из разных органов.

Устранение рисков [разработка приложений]

укажите центр, используемый в операции маркера получения
NetworkNotAvailableError
Устаревшие.

Не удалось выполнить запрос, так как сеть отключена.

Устранение рисков [разработка приложений]

В приложении вы можете сообщить пользователю, что возникли проблемы с сетью или повторите попытку позже.
NoAccountForLoginHint

Этот код ошибки указывает, что учетная запись не найдена с заданным указанием для входа.

Что происходит?

AcquireTokenSilent(IEnumerable<String>, String) или WithLoginHint(String) был вызван с параметром, который не соответствует какой-либо учетной loginHint записи в GetAccountsAsync()

Смягчение последствий

Если вы уверены в имени входаHint, вызовите AcquireTokenInteractive(IEnumerable<String>)
NoAndroidBrokerAccountFound

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

NoAndroidBrokerInstalledOnDevice

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

NoClientId

Что происходит?

Вы не задали идентификатор клиента.

Смягчение последствий

Используйте идентификатор приложения (GUID) на портале приложения в качестве идентификатора клиента в этом пакете SDK.
NonceRequiredForPopOnPCA

Что происходит?

Запрос настроен на проверку владения, но не настроен. Неисключение требуется для подтверждения владения на общедоступных клиентах

Смягчение последствий

Предоставьте нецелевое значение, если проверка владения настроена для общедоступных клиентов.
NonHttpsRedirectNotSupported

Перенаправления, отличные от HTTPS, не поддерживаются

Что происходит?

Эта ошибка возникает, когда поток авторизации, который собирает учетные данные пользователя, перенаправляется на страницу, которая не поддерживается, например, если перенаправление происходит по протоколу HTTP. Эта ошибка не запускается для окончательного перенаправления, который может быть http://localhost, но для промежуточных перенаправлений.

Смягчение последствий

Обычно это происходит при использовании федеративного каталога, который неправильно настроен.
NonParsableOAuthError

Ответ об ошибке был возвращен сервером OAuth2 и не удалось проанализировать его.

NoPromptFailedError

Возникло одно из двух условий:

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

Исправление.

вызовите AcquireTokenInteractive , чтобы пользователь приложения войдет в систему и принял согласие.
NoRedirectUri

URI перенаправления не существует.

Что происходит?

Необходимо указать универсальный код ресурса (URI) ответа или URI перенаправления, но не вызвал WithRedirectUri(String)
NoTokensFoundError

В кэше маркеров не найден маркер.

Смягчение:

Если приложение вызывается IPublicClientApplicationAcquireTokenInteractive таким образом, чтобы пользователь приложения войдет в систему и принял согласие.
  • Если это веб-приложение, которое необходимо ранее назвать IConfidentialClientApplication.AcquireTokenByAuthorizationCode, как описано в описании https://aka.ms/msal-net-authorization-code. Необходимо убедиться, что вы запросили нужные области. Дополнительные сведения см. в разделе https://github.com/Azure-Samples/ms-identity-aspnetcore-webapp-tutorial
  • Эта ошибка не должна происходить в веб-API
NoUsernameOrAccountIDProvidedForSilentAndroidBrokerAuthentication

Не удается запросить диспетчер учетных записей Android, так как имя пользователя или идентификатор домашней учетной записи не указан в автоматическом запросе проверки подлинности.

NullIntentReturnedFromAndroidBroker

Возвращается намерение NULL, поэтому не удается запустить действие брокера

OboCacheKeyNotInCacheError

Что происходит?

Кэш маркеров не содержит маркер с ключом кэша OBO, который соответствует переданной longRunningProcessSessionKeyAcquireTokenInLongRunningProcess(IEnumerable<String>, String).

Смягчение последствий

Вызов с этим longRunningProcessSessionKey первым или вызовом InitiateLongRunningProcessInWebApi(IEnumerable<String>, String, String)AcquireTokenInLongRunningProcess(IEnumerable<String>, String) с уже использованнымlongRunningProcessSessionKey.
ParsingWsMetadataExchangeFailed

Синтаксический анализ метаданных WS Exchange сбой.

ParsingWsTrustResponseFailed

Эту ошибку можно получить при использовании AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) в случае федеративного пользователя (который принадлежит федеративным поставщиком удостоверений, а не управляемому пользователю, принадлежащим в клиенте AZURE AD) ID3242: маркер безопасности не может быть проверен или авторизован. Пользователь не существует или ввел неправильный пароль

PasswordRequiredForManagedUserError

Пароль необходим для управляемого пользователя.

Что происходит?

Если эта ошибка может возникнуть при использовании AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) , и вы (или пользователь) не предоставили пароль.
PlatformNotSupported

Библиотека загружается на платформу, которая не поддерживается.

RedirectUriValidationFailed

Сбой проверки RedirectUri.

Что происходит?

Недопустимый URI перенаправления или URI ответа

Как исправить

Передайте допустимый URI перенаправления.
RegionalAndAuthorityOverride

Что происходит?

Вы настроили WithAuthority на уровне запроса, а также WithAzureRegion. Это не поддерживается, если среда изменяется из приложения на запрос.

Смягчение последствий

Вместо этого используйте WithTenantId на уровне запроса.
RegionalAuthorityValidation

Что происходит?

Вы настроили как региональный орган, так и проверку центра. Проверка центра в настоящее время не поддерживается для региональных органов.

Смягчение последствий

Задайте для флага validateAuthority значение false, чтобы использовать Azure региональный орган. Не отключайте проверку центра, если вы считываете центр из ненадежного источника, например из заголовка WWWAuthenticate HTTP-запроса, который привел к ответу 401.
RegionDiscoveryFailed

Сбой обнаружения регионов.

RegionDiscoveryNotEnabled

Что происходит?

Параметр WithAzureRegion имеет значение true

Смягчение последствий

Обнаружение регионов невозможно выполнить для центра ADFS.
RegionDiscoveryWithCustomInstanceMetadata

Что происходит?

Вы настроили обнаружение регионов и метаданные пользовательского экземпляра. Пользовательские метаданные заменяют обнаружение регионов.

Смягчение последствий

Настройте метаданные обнаружения регионов или пользовательского экземпляра.
RegionRequiredForMtlsPop

Что произошло?

Для проверки владения mTLS (mTLS PoP) требуется указать определенный регион Azure.

Смягчение:

Убедитесь, что конфигурация AzureRegion задана при использовании MTLS PoP, так как для нее требуется региональная конечная точка.
RequestThrottled

Служба вернула код ошибки HTTP 429, указывающий, что запрос был регулированием. Дополнительные сведения см. в разделе https://aka.ms/msal-net-throttling

RequestTimeout

Время ожидания HTTP-запроса к stS истекло.

Смягчение последствий

после задержки можно повторить попытку.
RopcDoesNotSupportMsaAccounts

Учетные данные владельца ресурса (ROPC) предоставили попытку с учетной записью MSA (Microsoft персональный). ROPC не поддерживает учетные записи MSA. Подробные сведения см. в разделе https://aka.ms/msal-net-ropc.

ScopesRequired

Что происходит?

Области не запрашивались

Смягчение последствий

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

Служба недоступна и возвращает код ошибки HTTP в диапазоне от 500 до 599

Смягчение последствий

после задержки можно повторить попытку.
SetCiamAuthorityAtRequestLevelNotSupported

Установка центра CIAM (например, "{tenantName}.ciamlogin.com") на уровне запроса не поддерживается. Центр ЦРУМ должен быть установлен во время создания приложения.

SSHCertUsedAsHttpHeader

Что происходит?

Вы настроили MSAL для запроса сертификатов SSH из AAD, и вы пытаетесь отформатировать заголовок проверки подлинности HTTP.

Смягчение последствий

Сертификаты SSH не должны использоваться в качестве маркеров носителя. Разработчики несут ответственность за отправку сертификатов на целевые компьютеры.
StateMismatchError

Состояние, возвращаемое из stS, отличается от состояния, отправленного библиотекой.

Что происходит?

Библиотека отправляет в stS состояние, связанное с запросом, и ожидает, что ответ будет согласован. Эта ошибка указывает, что ответ не связан с запросом. Это может указывать на попытку воспроизведения ответа

Смягчение последствий

Нет
StaticCacheWithExternalSerialization

Что происходит?

Сериализация кэша MSAL настроена одновременно со статическим внутренним кэшем с помощью WithCacheOptions(CacheOptions) этих кэшей, которые являются взаимоисключающими.

Смягчение последствий

Используйте только один вариант. Сценарии веб-сайта и веб-API должны полагаться на сериализацию внешнего кэша, так как внутренняя сериализация кэша не может масштабироваться. См. https://aka.ms/msal-net-cca-token-cache-serialization
SystemWebviewOptionsNotApplicable

Что происходит?

Вы настроили интерактивную проверку подлинности MSAL для использования внедренного веб-представления, а также для настройки SystemWebViewOptions. Это взаимоисключающие.

Смягчение последствий

Значение WithUseEmbeddedWebView(Boolean) true или не используется WithSystemWebViewOptions(SystemWebViewOptions)
TelemetryConfigOrTelemetryCallback

Что происходит?

Вы настроили обратный вызов телеметрии и конфигурацию телеметрии.

Смягчение последствий

Можно настроить только один механизм телеметрии.
TenantDiscoveryFailedError

Сбой обнаружения клиента.

Что происходит?

При чтении конфигурации OpenId, связанной с центром, конечной точкой авторизации или конечной точкой токена или издателем не найден

Смягчение последствий

Это указывает и центр, который не соответствует требованиям Open ID Connect. Укажите другой центр в конструкторе приложения или переопределение получения маркера ///
TenantOverrideNonAad

Что происходит?

Вы настроили WithTenant на уровне запроса, но приложение использует центр, отличный от AAD, они являются взаимоисключающими.

Смягчение последствий

WithTenantId можно использовать только в сочетании с центрами AAD.
TokenCacheNullError
Устаревшие.

Этот код ошибки возвращается из вызовов, AcquireTokenSilent(IEnumerable<String>, IAccount) когда кэш пользователя не был задан в конструкторе приложения. Это никогда не должно происходить в MSAL.NET 3.x, так как кэш создается приложением

TokenTypeMismatch

Что происходит?

Вы попросили один тип токена, но не получил его.

Смягчение последствий

Это происходит, если поставщик удостоверений (AAD, B2C, ADFS и т. д.) не поддерживает или реализует запрошенный тип токена. В случае ADFS рассмотрите возможность обновления до последней версии.
UapCannotFindDomainUser

Не удается получить доступ к пользователю из ОС (UWP)

Что происходит

Вы вызвали AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>), но не удалось найти имя пользователя домена.

Смягчение последствий

Это может быть связано с тем, что вам нужно добавить дополнительные возможности в приложение UWP в Package.appxmanifest. См. https://aka.ms/msal-net-uwp
UapCannotFindUpn

Не удается получить пользователя из ОС (UWP)

Что происходит

Вы вызвали AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>), но не удалось найти имя пользователя домена.

Смягчение последствий

Это может быть связано с тем, что вам нужно добавить дополнительные возможности в приложение UWP в Package.appxmanifest. См. https://aka.ms/msal-net-uwp
UnableToParseAuthenticationHeader

MSAL не может проанализировать заголовок проверки подлинности, возвращенный из конечной точки. Это может быть результатом неправильно сформированного заголовка, возвращаемого в WWW-Authenticate или коллекциях Authentication-Info.

UnauthorizedClient

Клиент не авторизован для доступа к ресурсу. Обычно это происходит, когда политики управления мобильными приложениями (MAM) включены. MSAL вызовет исключение в этом случае с protection_policy_required под ошибкой.

Смягчение последствий

Перехватите исключение и используйте в нем свойства, чтобы получить правильные параметры из пакета SDK Intune. IntuneAppProtectionPolicyRequiredException
UnknownBrokerError

Произошла неизвестная ошибка брокера.

Смягчение последствий

Нет. Может потребоваться сообщить пользователю.
UnknownError

Произошла неизвестная ошибка.

Смягчение последствий

Нет. Может потребоваться сообщить пользователю.
UnknownManagedIdentityError

Получен неизвестный ответ об ошибке.

UnknownUser

Что происходит

Вы можете получить эту ошибку при использовании AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) пользователя, не известного идентификатором поставщика удостоверений

Смягчение последствий

Сообщите пользователю. Имя входа, предоставленное пользователем, может быть неверным (например, пустым)
UnknownUserType

Что происходит

Эту ошибку можно получить при использовании AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) пользователя, который не распознается как управляемый пользователь или федеративный пользователь. Azure AD не удалось определить идентификатор поставщика удостоверений, который должен обработать пользователя

Смягчение последствий

Сообщите пользователю. Имя входа, предоставленное пользователем, может быть неверным.
UpnRequired

loginHint должен быть именем участника-пользователя

Что происходит?

Переопределение операции получения токенов было вызвано, в IPublicClientApplication котором принимается loginHint в качестве параметров, но это указание для входа не использует формат UserPrincipalName (UPN), например john.doe@contoso.com ожидаемый службой.

Remediation

Убедитесь, что в коде вы применяете loginHint имя участника-участника-участника
UserAssertionNullError

Этот код ошибки возвращается из вызовов, AcquireTokenOnBehalfOf(IEnumerable<String>, UserAssertion) когда утверждение пользователя null передается в качестве UserAssertion параметра.

Смягчение последствий

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

Назначаемое пользователем управляемое удостоверение не настраивается во время выполнения для Service Fabric.

UserAssignedManagedIdentityNotSupported

Управляемое удостоверение, назначаемое пользователем, не поддерживается для этого источника.

UserMismatch

Несоответствие пользователей.

UserNullError

Этот код ошибки возвращается из вызовов, AcquireTokenSilent(IEnumerable<String>, IAccount) когда пользователь null передается в качестве account параметра. Это может быть связано с тем, что вы назвали AcquireTokenSilent параметром, равным accountaccounts.FirstOrDefault()accounts но пустым.

Смягчение последствий

Передача другой учетной записи или вызов в противном случае AcquireTokenInteractive(IEnumerable<String>)
UserRealmDiscoveryFailed

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

ValidateAuthorityOrCustomMetadata

Что происходит?

Вы настроили собственные метаданные экземпляра и установили для проверки подлинности значение true. Это взаимоисключающие.

Смягчение последствий

Задайте для флага центра проверки значение false. Дополнительные сведения см. в статье https://aka.ms/msal-net-custom-instance-metadata.
WABError

Что происходит?

Windows брокер проверки подлинности, который обрабатывает взаимодействие между пользователем и AAD, произошел сбой.

Смягчение последствий

Дополнительные сведения см. в сообщении об ошибке.
WamFailedToSignout

Сбой входа WAM.

WamInteractiveError

Исключение службы WAM, которое может возникать при вызове AcquireTokenInteractive

WamNoB2C

Брокер Windows (WAM) поддерживается только в сочетании с учетными записями рабочих и учебных заведений и Microsoft учетными записями.

WamPickerError

Исключение службы WAM, которое может возникать при вызове AcquireTokenInteractive, а средство выбора учетных записей появится

WamScopesRequired

Что происходит?

Области не запрашивались

Смягчение последствий

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

При вызове AcquireTokenInteractive с брокером WAM необходимо выполнить вызов из потока пользовательского интерфейса.

WebView2LoaderNotFound

Что происходит?

Не удается запустить внедренный браузер WebView2, так как компонент среды выполнения не может быть загружен.

Смягчение последствий

Сведения об устранении неполадок см. в статье https://aka.ms/msal-net-webview2 .
WebView2NotInstalled

Что происходит?

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

Смягчение последствий

Внедренный браузер должен установить среду выполнения WebView2. Конечный пользователь приложения может скачать и установить среду выполнения WebView2 из https://go.microsoft.com/fwlink/p/?LinkId=2124703 приложения и перезапустить его. Разработчик приложения может получить распространяемую версию среды выполнения WebView2.
WebviewUnavailable

Выбранный WebView недоступен на этой платформе. Вы можете переключиться на другой WebView с помощью WithUseEmbeddedWebView(Boolean). Дополнительные сведения см. в разделе https://aka.ms/msal-net-os-browser

WsTrustEndpointNotFoundInMetadataDocument

WS-Trust конечная точка не найдена в документе метаданных.

Применяется к