Bahasa

MsalError Kelas

Definisi

Kode kesalahan dikembalikan sebagai properti di MsalException

public static class MsalError
type MsalError = class
Public Class MsalError
Warisan
MsalError

Bidang

Nama Deskripsi
AccessDenied

Akses ditolak.

AccessingWsMetadataExchangeFailed

Gagal mengakses metadata WS Exchange.

Apa yang terjadi?

Anda mencoba menggunakan AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) dan akun tersebut adalah akun federasi.

Mitigation

Tidak ada. Metadata WS tidak ditemukan atau tidak sesuai dengan apa yang diharapkan.
AccessTokenTypeMissing

Apa yang terjadi?

Respons dari titik akhir token tidak berisi parameter token_type.

Mitigation

Ini terjadi jika Penyedia Identitas (AAD, B2C, ADFS, dll.) tidak menyertakan jenis token akses dalam respons token. Verifikasi konfigurasi idP.
ActivityRequired

Di Android, Anda perlu memanggil AcquireTokenInteractiveParameterBuilder.WithParentActivityOrWindow(object) melewati aktivitas. Lihat https://aka.ms/msal-interactive-android

AdfsNotSupportedWithBroker

Apa yang terjadi?

Broker dikonfigurasi dengan otoritas ADFS, namun, broker tidak mendukung lingkungan ADFS.

Mitigation

Broker tidak mendukung lingkungan ADFS.
AndroidBrokerOperationFailed

Gagal menyelesaikan operasi Android Broker

AndroidBrokerSignatureVerificationFailed

Gagal memvalidasi tanda tangan broker android

AuthenticationCanceledError

Autentikasi dibatalkan.

Apa yang terjadi?

Pengguna telah membatalkan autentikasi, misalnya dengan menutup dialog autentikasi

Mitigation

Tidak ada, Anda tidak bisa mendapatkan token untuk memanggil API yang dilindungi. Anda mungkin ingin memberi tahu pengguna
AuthenticationFailed

Autentikasi gagal.

Apa yang terjadi?

Autentikasi gagal. Misalnya pengguna tidak memasukkan kata sandi yang tepat

Mitigation

Beri tahu pengguna untuk mencoba kembali.
AuthenticationUiFailed

Permintaan tidak dapat dilakukan karena kegagalan yang tidak diketahui dalam alur UI.*

Mitigation

Beri tahu pengguna.
AuthenticationUiFailedError

Permintaan tidak dapat dilakukan karena kegagalan dalam alur UI.

Apa yang terjadi?

Pustaka gagal memanggil Tampilan Web yang diperlukan untuk melakukan autentikasi interaktif. Pengecualian mungkin mencakup alasan

Mitigation

Jika pengecualian menyertakan alasannya, Anda dapat memberi tahu pengguna. Ini mungkin, misalnya, browser yang menerapkan tab chrome hilang di ponsel Android (itu hanya contoh: pengecualian ini juga dapat berlaku untuk platform lain)
AuthorityHostMismatch

Cloud (host URL otoritas) yang ditentukan di tingkat aplikasi tidak boleh berbeda dari cloud di tingkat permintaan.

Apa yang terjadi?

Anda tidak menentukan otoritas di tingkat aplikasi, sehingga default ke cloud publik (login.microsoft.com), tetapi otoritas di tingkat permintaan adalah untuk cloud yang berbeda. Hanya penyewa yang dapat diubah pada tingkat permintaan.

Mitigation

Menambahkan. WithAuthority("https://login.windows.net/common) di tingkat aplikasi dan tentukan penyewa pada tingkat permintaan: . WithAuthority("https://login.windows.net/1234-567-890-12345678).
AuthorityTenantSpecifiedTwice

Apa yang terjadi?

Anda menentukan penyewa dua kali - sekali di WithAuthority() dan sekali menggunakan WithTenant()

Mitigation

Tentukan penyewa sekali.
AuthorityTypeMismatch

Apa yang terjadi?

Otoritas yang dikonfigurasi pada tingkat aplikasi berbeda dari otoritas yang dikonfigurasi pada tingkat permintaan

Mitigation

Pastikan jenis otoritas yang sama digunakan
AuthorityValidationFailed

Validasi otoritas gagal.

Apa yang terjadi?

Validasi otoritas gagal. Ini mungkin karena otoritas tidak mematuhi standar OIDC, atau mungkin ada masalah keamanan

Mitigation

Gunakan otoritas yang berbeda. Jika Anda benar-benar yakin bahwa Anda dapat mempercayai otoritas, Anda dapat menggunakan WithAuthority(AadAuthorityAudience, Boolean) parameter yang meneruskan validateAuthority ke false (tidak disarankan)
B2CAuthorityHostMismatch

Host otoritas B2C tidak sama dengan yang digunakan saat membuat aplikasi klien.

BrokerApplicationRequired

Apa yang terjadi?

Aplikasi broker diperlukan, tetapi tidak dapat ditemukan atau dikomunikasikan.

Mitigation

Menginstal aplikasi broker, seperti Authenticator, dari penyimpanan aplikasi
BrokerDoesNotSupportPop

Apa yang terjadi?

Permintaan telah mengaktifkan broker dan Proof-of-Possession dikonfigurasi tetapi broker tidak mendukung Proof-of-Possession

Mitigation

hanya konfigurasikan Proof-of-Possession untuk klien publik di windows.
BrokerNonceMismatch

Respons broker nonce tidak cocok dengan permintaan nonce yang dikirim oleh MSAL.NET untuk broker >iOS = v6.3.19

BrokerRequiredForPop

Apa yang terjadi?

Permintaan memiliki Proof-of-Possession yang dikonfigurasi tetapi tidak mengaktifkan broker. Broker diperlukan untuk menggunakan Bukti Kepemilikan pada klien publik

Mitigation

Aktifkan broker saat Proof-of-Possession dikonfigurasi.
BrokerResponseHashMismatch

Hash respons broker tidak cocok

BrokerResponseReturnedError

Respons broker mengembalikan kesalahan

CannotAccessUserInformationOrUserNotDomainJoined

Tidak dapat Mengakses Informasi Pengguna atau pengguna bukan domain pengguna.

Apa yang terjadi?

Anda mencoba menggunakan AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>) tetapi pengguna bukan pengguna domain (komputer bukan domain atau AAD bergabung)
CannotInvokeBroker

MSAL tidak dapat memanggil broker. Kemungkinan alasannya adalah broker tidak diinstal pada perangkat pengguna, atau ada masalah dengan UiParent atau CallerViewController yang null. Lihat https://aka.ms/msal-brokers

CannotSwitchBetweenImdsVersionsForPreview

Sistem telah jatuh kembali IMDS V1 dan hanya bisa mendapatkan token Pembawa. Ini perlu dihidupkan ulang untuk mendapatkan token PoP mTLS.

CertificateNotRsa

Apa yang terjadi?

Sertifikat yang disediakan bukan tipe RSA.

Mitigation

Silakan gunakan sertifikat RSA.
CertWithoutPrivateKey

Apa yang terjadi?

Sertifikat yang disediakan tidak memiliki kunci privat.

Mitigation

Pastikan sertifikat memiliki kunci privat.
ClientCredentialAuthenticationTypeMustBeDefined

Apa yang terjadi?

Anda mengonfigurasi autentikasi klien rahasia MSAL tanpa jenis autentikasi (Sertifikat, Rahasia, Pernyataan Klien)

Mitigation

Panggil ConfidentialClientApplicationBuilder.WithClientSecret, ConfidentialClientApplicationBuilder.WithCertificate, ConfidentialClientApplicationBuilder.WithClientAssertion
ClientCredentialAuthenticationTypesAreMutuallyExclusive

Apa yang terjadi?

Anda mengonfigurasi autentikasi klien rahasia MSAL dengan lebih dari satu jenis autentikasi (Sertifikat, Rahasia, Pernyataan Klien)
CodeExpired

Apa yang terjadi?

Dalam konteks alur Kode perangkat (Lihat https://aka.ms/msal-net-device-code-flow), kesalahan ini terjadi ketika kode perangkat kedaluwarsa sebelum pengguna masuk di perangkat lain (ini biasanya setelah 15 menit).

Mitigation

Tidak ada. Beri tahu pengguna bahwa mereka membutuhkan waktu terlalu lama untuk masuk di URL yang disediakan dan masukkan kode yang disediakan.
CombinedUserAppCacheNotSupported

Menggunakan penyimpanan datar gabungan, seperti file, untuk menyimpan token aplikasi dan pengguna tidak didukung. Gunakan cache token yang dipartisi (misalnya cache terdistribusi seperti Redis) atau file terpisah untuk cache token aplikasi dan pengguna. Lihat https://aka.ms/msal-net-token-cache-serialization .

CryptographicError

Terjadi pengecualian kriptografi saat mencoba menggunakan sertifikat yang disediakan

CurrentBrokerAccount

Kode kesalahan ini kembali dari AcquireTokenSilent(IEnumerable<String>, IAccount) panggilan ketika OperatingSystemAccount pengguna diteruskan sebagai account parameter . Hanya beberapa broker (WAM) yang dapat masuk ke pengguna saat ini.

Mitigation

Di Windows, gunakan broker melalui . DenganBroker(true), gunakan akun lain, atau panggilAcquireTokenInteractive(IEnumerable<String>)
CustomMetadataInstanceOrUri

Apa yang terjadi?

Anda telah mengonfigurasi metadata instans Anda sendiri menggunakan Uri dan string. Hanya satu yang didukung.

Mitigation

Panggil WithInstanceDiscoveryMetadata hanya sekali. Lihat https://aka.ms/msal-net-custom-instance-metadata untuk detail selengkapnya.
CustomWebUiRedirectUriMismatch

Kode kesalahan yang digunakan ketika CustomWebUI telah mengembalikan URI, tetapi tidak cocok dengan Authority dan AbsolutePath dari URI pengalihan yang dikonfigurasi.

CustomWebUiReturnedInvalidUri

Kode kesalahan yang ICustomWebUi digunakan ketika telah mengembalikan URI, tetapi tidak valid - itu null atau tidak memiliki kode. Pertimbangkan untuk melemparkan pengecualian jika Anda tidak dapat mencegat URI yang berisi kode.

DefaultRedirectUriIsInvalid

Validasi RedirectUri gagal.

DeviceCertificateNotFound

Sertifikat perangkat tidak ditemukan.

DuplicateQueryParameterError

Parameter kueri duplikat ditemukan di extraQueryParameters.

Apa yang terjadi?

Anda telah menggunakan extraQueryParameter pengambil alihan operasi akuisisi token di aplikasi klien publik dan klien rahasia dan meneruskan parameter yang sudah ada di URL (baik karena Anda memilikinya dengan cara lain, atau pustaka menambahkannya).

Mitigasi [Pengembangan Aplikasi]

RemoveAccount parameter duplikat dari penimpaan akuisisi token.
EncodedTokenTooLong

Token yang dikodekan terlalu panjang.

Apa yang terjadi

Dalam panggilan aplikasi klien rahasia, pernyataan klien yang dibangun oleh MSAL lebih panjang dari panjang maksimum yang mungkin untuk token JWT.
ExactlyOneScopeExpected

Tepat satu cakupan diharapkan.

ExperimentalFeature

Apa yang terjadi?

Anda mencoba menggunakan fitur yang ditandai sebagai eksperimental

Mitigation

Saat membuat PublicClientApplication atau ConfidentialClientApplication, gunakan . Dengan opsiExperimentalFeatures(). Lihat https://aka.ms/msal-net-experimental-features untuk detailnya.
FailedToAcquireTokenSilentlyFromBroker

Gagal memperoleh token secara diam-diam. Digunakan dalam skenario broker.

Apa yang terjadi

Anda menelepon AcquireTokenSilent(IEnumerable<String>, IAccount) atau AcquireTokenSilent(IEnumerable<String>, String) dan aplikasi seluler Anda (Xamarin) memanfaatkan broker (Microsoft Authenticator atau Microsoft Company Portal), tetapi broker tidak dapat memperoleh token secara diam-diam.

Mitigation

Panggil AcquireTokenInteractive(IEnumerable<String>)
FailedToGetBrokerResponse

Apa yang terjadi?

Anda mencoba mengautentikasi dengan broker tetapi MSAL tidak dapat membaca respons dari broker.

Mitigation

Broker yang saat ini diinstal mungkin tidak mendukung MSAL. Xamarin, Anda perlu memastikan bahwa Anda telah menginstal Intune Company Portal (5.0.4689.0 atau lebih tinggi) atau Microsoft Authenticator (6.2001.0140 atau lebih tinggi). lihat https://aka.ms/Brokered-Authentication-for-Android"
FailedToRefreshToken

Gagal menyegarkan token.

Apa yang terjadi?

Token tidak dapat disegarkan. Ini bisa karena pengguna belum menggunakan aplikasi untuk waktu yang lama. dan oleh karena itu token refresh yang dipertahankan dalam cache token telah kedaluwarsa

Mitigation

Jika Anda berada dalam aplikasi klien publik, yang mendukung interaktivitas, kirim permintaan AcquireTokenInteractive(IEnumerable<String>)interaktif . Jika tidak, gunakan metode yang berbeda untuk memperoleh token.
FederatedServiceReturnedError

Layanan federasi mengembalikan kesalahan.

Mitigation

Tidak ada. Layanan federasi mengembalikan kesalahan. Anda dapat mencoba melihat Isi pengecualian untuk pemahaman yang lebih baik tentang kesalahan dan memilih mitigasi
ForceRefreshNotCompatibleWithTokenHash

Apa yang terjadi?

Operasi ini mencoba memaksa refresh token sambil juga menggunakan hash token. Kedua opsi ini tidak kompatibel karena memaksa refresh melewati penembolokan token, yang bertentangan dengan validasi hash token.

Mitigasi:

- Pastikan bahwa 'force_refresh' tidak diatur ke 'true' saat menggunakan hash token. - Tinjau parameter permintaan untuk memastikan parameter tersebut tidak bertentangan. - Jika hashing token diperlukan, izinkan token yang di-cache untuk digunakan alih-alih memaksa refresh.
GetUserNameFailed

Gagal mendapatkan nama pengguna.

HttpListenerError

HttpListenerException terjadi saat mendengarkan browser sistem untuk menyelesaikan login.

HttpStatusCodeNotOk

ErrorCode yang digunakan ketika respons HTTP mengembalikan sesuatu yang berbeda dari 200 (OK)

HttpStatusNotFound

Kode kesalahan yang digunakan saat respons HTTP mengembalikan HttpStatusCode.NotFound

ImdsServiceError

Mewakili kode kesalahan yang dikembalikan ketika operasi IMDS gagal.

InitializeProcessSecurityError

Apa yang terjadi?

Keamanan proses pengaturan kegagalan untuk mengaktifkan Pemilih Akun WAM dalam proses yang ditingkatkan.

Mitigation

Untuk detail pemecahan masalah, lihat https://aka.ms/msal-net-wam .
IntegratedWindowsAuthenticationFailed

Ini dapat terjadi jika ada masalah konfigurasi di lingkungan ADFS tempat ini mengautentikasi. Lihat https://aka.ms/msal-net-iwa-troubleshooting untuk detail selengkapnya

IntegratedWindowsAuthNotSupportedForManagedUser

Autentikasi Windows terintegrasi hanya didukung untuk pengguna "federasi"

InteractionRequired

Kode kesalahan protokol OAuth2 standar. Ini menunjukkan bahwa aplikasi perlu mengekspos UI kepada pengguna sehingga pengguna dapat melakukan masuk interaktif untuk mendapatkan token dengan klaim yang diperbarui.

Mitigasi:

Jika aplikasi Anda adalah panggilanIPublicClientApplication, AcquireTokenInteractive lakukan autentikasi interaktif. Jika aplikasi Anda kemungkinan ConfidentialClientApplication adalah bahwa anggota Klaim pengecualian tidak kosong. Lihat Claims untuk mitigasi yang tepat
InternalCacheDisabled

Apa yang terjadi?

API yang bergantung pada cache dipanggil, tetapi cache token internal MSAL dinonaktifkan melalui DisableInternalCacheOptions. Ini dapat terjadi dengan API seperti AcquireTokenSilent(IEnumerable<String>, IAccount) dan AcquireTokenInLongRunningProcess(...).

Mitigation

Gunakan alur autentikasi yang tidak bergantung pada cache internal MSAL, seperti AcquireTokenByRefreshToken(IEnumerable<String>, String) dengan token refresh yang diperoleh dari GetRefreshToken(AuthenticationResult), atau gunakan alur interaktif lain, yang sesuai untuk aplikasi Anda.
InternalError

Kesalahan internal

InvalidAdalCacheMultipleRTs

Apa yang terjadi?

Cache ADAL tidak valid karena berisi beberapa entri token refresh untuk satu pengguna.

Mitigation

Hapus cache ADAL. Jika Anda tidak mempertahankan cache ADAL, ini mungkin bug di MSAL.
InvalidAuthority

Otoritas tidak valid

Apa yang terjadi

Ketika pustaka mencoba menemukan otoritas dan mendapatkan titik akhir yang diperlukan untuk memperoleh token, pustaka mendapatkan kode HTTP yang tidak diotorisasi atau respons yang tidak terduga

Perbaikan

Periksa apakah otoritas yang dikonfigurasi untuk aplikasi, atau meneruskan beberapa penimpaan token akuisisi token yang mendukung penimpaan otoritas sudah benar
InvalidAuthorityType

Jenis otoritas tidak valid. MSAL.NET tidak tahu cara berinteraksi dengan otoritas yang ditentukan ketika aplikasi dibuat.

Mitigation

Menggunakan otoritas yang berbeda
InvalidAuthorizationUri

Uri otorisasi telah dicegat, tetapi tidak dapat diurai. Lihat log untuk detail selengkapnya.

InvalidCertificate

Sertifikat yang diterima dari server Imds tidak valid.

InvalidClient

Azure kesalahan layanan AD yang menunjukkan masalah konfigurasi.

Mitigation

Lihat pesan kesalahan untuk detailnya, lalu ambil tindakan korektif di portal pendaftaran aplikasi Lihat https://aka.ms/msal-net-invalid-client untuk detailnya.
InvalidClientAssertion

Dikembalikan saat WithClientAssertion delegasi menyediakan null string JWT atau kosong.

Mitigasi

Pastikan delegasi mengembalikan JWT yang tidak kosong dan dikodekan base-64.
InvalidClientCredentialConfiguration

Apa yang terjadi?

Anda mengonfigurasi sertifikat statis (WithCertificate(X509Certificate2)) dan penyedia sertifikat dinamis (WithCertificate(Func)).

Mitigation

Pilih satu pendekatan untuk menyediakan sertifikat klien.
InvalidCredentialMaterial

Apa yang terjadi?

Jenis kredensial yang dikonfigurasi tidak kompatibel dengan mode autentikasi yang diminta. Misalnya, rahasia klien tidak dapat digunakan dengan mTLS Proof-of-Possession atau SendCertificateOverMtls karena mTLS memerlukan sertifikat untuk mengikat token ke transportasi TLS.

Mitigasi:

Gunakan kredensial berbasis sertifikat melalui WithCertificate(), atau delegasi yang mengembalikan ClientSignedAssertion dengan TokenBindingCertificate saat mTLS Proof-of-Possession diperlukan.
InvalidGrantError

Kode kesalahan protokol OAuth2 standar. Ini menunjukkan bahwa aplikasi perlu mengekspos UI kepada pengguna sehingga pengguna melakukan tindakan interaktif untuk mendapatkan token baru.

Mitigasi:

Jika aplikasi Anda adalah panggilanIPublicClientApplication, AcquireTokenInteractive lakukan autentikasi interaktif. Jika aplikasi Anda kemungkinan ConfidentialClientApplication adalah bahwa anggota Klaim pengecualian tidak kosong. Lihat MsalServiceException.Claims untuk mitigasi yang tepat
InvalidInstance

Kesalahan layanan AAD yang menunjukkan bahwa otoritas yang dikonfigurasi tidak ada

InvalidJsonClaimsFormat

Apa yang terjadi?

Anda telah mengonfigurasi permintaan klaim, tetapi string klaim tidak dalam format JSON

Mitigation

Pastikan bahwa parameter klaim adalah JSON yang valid. Periksa pengecualian dalam untuk detail tentang penguraian JSON.
InvalidJwtError

JWT tidak valid.

Apa yang terjadi?

Pustaka mengharapkan JWT (misalnya token dari cache, atau diterima dari STS), tetapi formatnya tidak valid

Mitigation

Pastikan bahwa cache token tidak diubah
InvalidManagedIdentityEndpoint

Titik akhir identitas terkelola tidak valid.

InvalidManagedIdentityIdType

Sumber identitas terkelola tidak memilih jenis id tertentu.

InvalidManagedIdentityResponse

Nilai yang diperlukan hilang dari respons identitas terkelola.

InvalidOwnerWindowType

Jenis jendela pemilik tidak valid.

Apa yang terjadi?

Anda menggunakan "AcquireTokenInteractiveParameterBuilder.WithParentActivityOrWindow(object) tetapi parameter yang Anda lewati tidak valid.

Remediation

Pada .NET Standard, objek yang Activity diharapkan adalah di Android, UIViewController di iOS, NSWindow di MAC, dan IWin32Window atau IntPr di Windows. Jika Anda berada dalam aplikasi WPF, Anda dapat menggunakan WindowInteropHelper(wpfControl).Handle untuk mendapatkan handel jendela yang terkait dengan kontrol WPF
InvalidRequest

Permintaan tidak valid.

Apa yang terjadi?

Ini dapat terjadi karena Anda menggunakan metode akuisisi token yang tidak kompatibel dengan otoritas. Misalnya: Anda menelepon AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) tetapi Anda menggunakan otoritas yang diakhir dengan '/common' atau '/consumers' karena ini memerlukan otoritas penyewa atau '/organisasi'.

Mitigation

Sesuaikan otoritas dengan metode AcquireTokenXX yang Anda gunakan (jangan gunakan 'umum' atau 'konsumen' dengan AcquireTokenByUsernamePassword(IEnumerable<String>, String, String)AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>)
InvalidTokenProviderResponseValue

Nilai yang diperlukan hilang dari respons penyedia token

InvalidUserInstanceMetadata

Apa yang terjadi?

Anda telah mengonfigurasi metadata instans Anda sendiri, tetapi json yang disediakan tampaknya tidak valid.

Mitigation

Lihat https://aka.ms/msal-net-custom-instance-metadata contoh json valid yang dapat digunakan.
JsonParseError

Penguraian JSON gagal.

Apa yang terjadi?

Blob JSON yang dibaca dari cache token atau diterima dari STS tidak dapat diurai. Ini dapat terjadi saat membaca cache token, atau menerima IDToken dari STS.

Mitigation

Pastikan bahwa cache token tidak diubah
LinuxXdgOpen

Apa yang terjadi?

MSAL mencoba membuka browser di Linux menggunakan alat xdg-open, gnome-open, atau kfmclient, tetapi gagal.

Mitigation

Pastikan Anda dapat membuka halaman menggunakan alat xdg-open. Lihat https://aka.ms/msal-net-os-browser untuk detailnya.
LoopbackRedirectUri

Apa yang terjadi?

URL pengalihan saat ini bukan URL loopback.

Mitigation

Untuk menggunakan browser OS, URL loopback, dengan atau tanpa port, harus dikonfigurasi baik selama pendaftaran aplikasi maupun saat menginisialisasi objek IPublicClientApplication. Lihat https://aka.ms/msal-net-os-browser untuk detailnya.
LoopbackResponseUriMismatch

Apa yang terjadi?

MSAL telah mencegat Uri yang mungkin berisi kode otorisasi, tetapi tidak cocok dengan URL pengalihan yang dikonfigurasi.

Mitigation

Jika Anda menggunakan implementasi ICustomWebUi, pastikan URL pengalihan cocok dengan URL yang berisi kode autentikasi. Jika Anda tidak menggunakan ICustomWebUI, ini bisa menjadi serangan man-in-the-middle.
ManagedIdentityAllSourcesUnavailable

Semua sumber identitas terkelola tidak tersedia.

ManagedIdentityRequestFailed

Respons kesalahan Identitas Terkelola diterima.

ManagedIdentityResponseParseFailure

Respons kesalahan Identitas Terkelola diterima.

ManagedIdentityUnreachableNetwork

Titik akhir Identitas Terkelola tidak dapat dijangkau.

MissingFederationMetadataUrl

URL Metadata Federasi hilang untuk pengguna federasi.

MissingManagedIdentityEnvVar

Identitas terkelola tidak memiliki variabel lingkungan yang diperlukan.

MissingPassiveAuthEndpoint

Tidak ada titik akhir autentikasi pasif yang ditemukan dalam konfigurasi OIDC otoritas

Apa yang terjadi?

Ketika pustaka masuk ke otoritas dan mendapatkan konfigurasi sambungkan id terbuka, ia mengharapkan untuk menemukan entri Titik Akhir Autentikasi Pasif, dan tidak dapat menemukannya.

Perbaikan

Periksa apakah otoritas yang dikonfigurasi untuk aplikasi, atau meneruskan beberapa penimpaan token akuisisi token yang mendukung penimpaan otoritas sudah benar
MissingTenantedAuthority

Otoritas Penyewa hilang. MSAL.NET memerlukan otoritas penyewa (yaitu, otoritas dengan ID penyewa) agar mTLS ditentukan ketika aplikasi dibuat, tetapi tidak ada yang disediakan.

Mitigation

Pastikan bahwa otoritas penyewa, yang mencakup ID penyewa tertentu, ditentukan selama konfigurasi aplikasi. Misalnya, gunakan "https://login.microsoftonline.com/{tenantId}" atau struktur URL serupa.
MtlsBearerWithoutRegion

Apa yang terjadi?

mTLS Bearer dikonfigurasi tetapi wilayah tidak ditentukan.

Mitigation

Pastikan konfigurasi AzureRegion diatur saat menggunakan mTLS Bearer karena memerlukan titik akhir regional.
MtlsCertificateNotProvided

Apa yang terjadi?

mTLS Proof of Possession (mTLS PoP) dikonfigurasi tetapi sertifikat tidak disediakan.

Mitigation

Pastikan bahwa sertifikat yang valid disediakan dalam konfigurasi saat menggunakan mTLS PoP karena diperlukan untuk autentikasi yang aman.
MtlsNotSupportedForManagedIdentity

Apa yang terjadi?

mTLS tidak didukung untuk autentikasi identitas terkelola.
MtlsPopNotSupportedForEnvironment

Apa yang terjadi?

mTLS Proof of Possession (mTLS PoP) tidak didukung untuk lingkungan sovereign cloud yang ditentukan.

Mitigasi:

Gunakan titik akhir alternatif yang didukung untuk lingkungan sovereign cloud.
MtlsPopTokenNotSupportedinImdsV1

Token mTLS PoP tidak didukung di IMDS V1.

MtlsPopWithoutRegion

Apa yang terjadi?

mTLS Proof of Possession (mTLS PoP) dikonfigurasi tetapi wilayah tidak ditentukan.

Mitigation

Pastikan konfigurasi AzureRegion diatur saat menggunakan mTLS PoP karena memerlukan titik akhir regional.
MultipleAccountsForLoginHint

Kode kesalahan ini menunjukkan bahwa beberapa akun ditemukan memiliki petunjuk masuk yang sama dan MSAL tidak dapat memilihnya. Silakan gunakan WithAccount(IAccount) untuk menentukan akun

MultipleTokensMatchedError

Beberapa Token dicocokkan.

Apa yang terjadi?

Pengecualian ini terjadi dalam kasus aplikasi yang mengelola beberapa identitas, saat memanggil AcquireTokenSilent(IEnumerable<String>, IAccount) atau salah satu penimpaannya dan cache token pengguna berisi beberapa token untuk aplikasi klien ini dan Akun yang ditentukan, tetapi dari otoritas yang berbeda.

Mitigasi [Pengembangan Aplikasi]

tentukan otoritas yang akan digunakan dalam operasi memperoleh token
NetworkNotAvailableError
Kedaluwarsa.

Permintaan tidak dapat dilakukan karena jaringan sedang tidak berfungsi.

Mitigasi [Pengembangan aplikasi]

Dalam aplikasi, Anda dapat memberi tahu pengguna bahwa ada masalah jaringan atau coba lagi nanti
NoAccountForLoginHint

Kode kesalahan ini menunjukkan bahwa tidak ada akun yang ditemukan memiliki petunjuk masuk yang diberikan.

Apa yang terjadi?

AcquireTokenSilent(IEnumerable<String>, String) atau WithLoginHint(String) dipanggil dengan parameter yang tidak cocok dengan loginHint akun apa pun di GetAccountsAsync()

Mitigation

Jika Anda yakin tentang loginHint, hubungi AcquireTokenInteractive(IEnumerable<String>)
NoAndroidBrokerAccountFound

MSAL tidak dapat menemukan akun yang sesuai untuk digunakan dengan broker

NoAndroidBrokerInstalledOnDevice

MSAL tidak dapat menemukan aplikasi broker untuk mengautentikasi akun.

NoClientId

Apa yang terjadi?

Anda belum menetapkan ID klien.

Mitigation

Gunakan ID aplikasi (GUID) dari portal aplikasi sebagai ID klien di SDK ini
NonceRequiredForPopOnPCA

Apa yang terjadi?

Permintaan memiliki Proof-of-Possession yang dikonfigurasi tetapi tidak memiliki nonce yang dikonfigurasi. Nonce diperlukan untuk Bukti Kepemilikan pada klien publik

Mitigation

Berikan nonce saat Proof-of-Possession dikonfigurasi untuk klien publik.
NonHttpsRedirectNotSupported

Pengalihan non HTTPS tidak didukung

Apa yang terjadi?

Kesalahan ini terjadi ketika alur otorisasi, yang mengumpulkan kredensial pengguna, dialihkan ke halaman yang tidak didukung, misalnya jika pengalihan terjadi melalui http. Kesalahan ini tidak memicu pengalihan akhir, yang dapat berupa http://localhost, tetapi untuk pengalihan perantara.

Mitigation

Ini biasanya terjadi saat menggunakan direktori federasi yang tidak disiapkan dengan benar.
NonParsableOAuthError

Respons kesalahan dikembalikan oleh server OAuth2 dan tidak dapat diurai

NoPromptFailedError

Salah satu dari dua kondisi ditemui:

  • Prompt.NoPrompt Diteruskan dalam panggilan token interaktif, tetapi batasan tidak dapat dihormati karena interaksi pengguna diperlukan, misalnya karena pengguna perlu masuk kembali, memberikan persetujuan untuk lebih banyak cakupan, atau melakukan autentikasi beberapa faktor.
  • Terjadi kesalahan selama autentikasi web senyap yang mencegah alur autentikasi selesai dalam jangka waktu yang cukup singkat.

Perbaikan:

panggil AcquireTokenInteractive agar pengguna aplikasi Anda masuk dan menerima persetujuan.
NoRedirectUri

Tidak ada URI Pengalihan.

Apa yang terjadi?

Anda perlu memberikan URI Balasan/URI Pengalihan, tetapi belum memanggil WithRedirectUri(String)
NoTokensFoundError

Tidak ada token yang ditemukan di cache token.

Mitigasi:

Jika aplikasi Anda adalah IPublicClientApplication panggilan AcquireTokenInteractive sehingga pengguna aplikasi Anda masuk dan menerima persetujuan.
  • Jika ini adalah aplikasi web, Anda sebelumnya harus memanggil IConfidentialClientApplication.AcquireTokenByAuthorizationCode seperti yang dijelaskan dalam https://aka.ms/msal-net-authorization-code. Anda perlu memastikan bahwa Anda telah meminta cakupan yang tepat. Untuk detailnya Lihat https://github.com/Azure-Samples/ms-identity-aspnetcore-webapp-tutorial
  • Kesalahan ini tidak boleh terjadi di API web
NoUsernameOrAccountIDProvidedForSilentAndroidBrokerAuthentication

Tidak dapat mengkueri pengelola akun Android karena tidak ada nama pengguna atau ID akun rumah yang disediakan dalam permintaan autentikasi senyap.

NullIntentReturnedFromAndroidBroker

Niat null dikembalikan sehingga aktivitas broker tidak dapat diluncurkan

OboCacheKeyNotInCacheError

Apa yang terjadi?

Cache token tidak berisi token dengan kunci cache OBO yang cocok dengan yang longRunningProcessSessionKey diteruskan ke AcquireTokenInLongRunningProcess(IEnumerable<String>, String).

Mitigation

Hubungi InitiateLongRunningProcessInWebApi(IEnumerable<String>, String, String) dengan ini longRunningProcessSessionKey terlebih dahulu atau panggil AcquireTokenInLongRunningProcess(IEnumerable<String>, String) dengan yang sudah digunakan longRunningProcessSessionKey.
ParsingWsMetadataExchangeFailed

Penguraian metadata WS Exchange Gagal.

ParsingWsTrustResponseFailed

Anda bisa mendapatkan kesalahan ini saat menggunakan AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) Dalam kasus pengguna Federasi (yang dimiliki oleh IdP federasi, dibandingkan dengan pengguna terkelola yang dimiliki dalam penyewa AZURE AD) ID3242: Token keamanan tidak dapat diautentikasi atau diotorisasi. Pengguna tidak ada atau memasukkan kata sandi yang salah

PasswordRequiredForManagedUserError

Kata sandi diperlukan untuk pengguna terkelola.

Apa yang terjadi?

Jika bisa mendapatkan kesalahan ini saat menggunakan AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) dan Anda (atau pengguna) tidak memberikan kata sandi.
PlatformNotSupported

Pustaka dimuat pada platform yang tidak didukung.

RedirectUriValidationFailed

Validasi RedirectUri gagal.

Apa yang terjadi?

URI pengalihan/ URI balasan tidak valid

Cara memperbaikinya

Berikan URI pengalihan yang valid.
RegionalAndAuthorityOverride

Apa yang terjadi?

Anda mengonfigurasi WithAuthority di tingkat permintaan, dan juga WithAzureRegion. Ini tidak didukung ketika lingkungan berubah dari aplikasi ke permintaan.

Mitigation

Gunakan WithTenantId di tingkat permintaan sebagai gantinya.
RegionalAuthorityValidation

Apa yang terjadi?

Anda mengonfigurasi Otoritas Regional dan Validasi Otoritas. Validasi otoritas saat ini tidak didukung untuk otoritas regional.

Mitigation

Atur bendera validateAuthority ke false untuk menggunakan otoritas Regional Azure. Jangan nonaktifkan validasi otoritas jika Anda membaca otoritas dari sumber yang tidak tepercaya, misalnya dari header WWWAuthenticate dari permintaan HTTP yang menghasilkan respons 401.
RegionDiscoveryFailed

Penemuan wilayah gagal.

RegionDiscoveryNotEnabled

Apa yang terjadi?

DenganAzureRegion diatur ke true

Mitigation

Penemuan wilayah tidak dapat dilakukan untuk otoritas ADFS.
RegionDiscoveryWithCustomInstanceMetadata

Apa yang terjadi?

Anda telah mengonfigurasi Penemuan Wilayah dan Metadata Instans Kustom. Penemuan wilayah pengganti metadata kustom.

Mitigation

Konfigurasikan Penemuan Wilayah atau Metadata Penemuan Instans Kustom.
RegionRequiredForMtlsPop

Apa yang terjadi?

mTLS Proof of Possession (mTLS PoP) memerlukan wilayah Azure tertentu untuk ditentukan.

Mitigasi:

Pastikan konfigurasi AzureRegion diatur saat menggunakan mTLS PoP karena memerlukan titik akhir regional.
RequestThrottled

Layanan mengembalikan kode kesalahan HTTP 429 yang menunjukkan permintaan telah dibatasi. Untuk detail selengkapnya lihat https://aka.ms/msal-net-throttling

RequestTimeout

Permintaan HTTP ke STS kehabisan waktu.

Mitigation

Anda dapat mencoba kembali setelah penundaan.
RopcDoesNotSupportMsaAccounts

Pemberian Info Masuk Kata Sandi Pemilik Sumber Daya (ROPC) yang dicoba dengan akun MSA (Microsoft pribadi). ROPC tidak mendukung akun MSA. Lihat https://aka.ms/msal-net-ropc untuk detailnya.

ScopesRequired

Apa yang terjadi?

Tidak ada cakupan yang diminta

Mitigation

Setidaknya satu cakupan harus ditentukan untuk alur autentikasi ini
ServiceNotAvailable

Layanan tidak tersedia dan mengembalikan kode kesalahan HTTP dalam rentang 500-599

Mitigation

Anda dapat mencoba kembali setelah penundaan.
SetCiamAuthorityAtRequestLevelNotSupported

Mengatur otoritas CIAM (mis. "{tenantName}.ciamlogin.com") pada tingkat permintaan tidak didukung. Otoritas CIAM harus ditetapkan selama pembuatan aplikasi.

SSHCertUsedAsHttpHeader

Apa yang terjadi?

Anda telah mengonfigurasi MSAL untuk meminta sertifikat SSH dari AAD, dan Anda mencoba memformat header autentikasi HTTP.

Mitigation

Sertifikat SSH tidak boleh digunakan sebagai token Pembawa. Pengembang bertanggung jawab untuk mengirim sertifikat ke komputer target.
StateMismatchError

Status yang dikembalikan dari STS berbeda dari yang dikirim oleh pustaka

Apa yang terjadi?

Pustaka mengirimkan ke STS status yang terkait dengan permintaan, dan mengharapkan balasan konsisten. Kesalahan ini menunjukkan bahwa balasan tidak terkait dengan permintaan. Ini dapat menunjukkan upaya untuk memutar ulang respons

Mitigation

Tidak ada
StaticCacheWithExternalSerialization

Apa yang terjadi?

Anda mengonfigurasi serialisasi cache MSAL secara bersamaan dengan cache internal statis melalui WithCacheOptions(CacheOptions) Ini saling eksklusif.

Mitigation

Gunakan hanya satu opsi. Skenario situs web dan API web harus mengandalkan serialisasi cache eksternal, karena serialisasi cache internal tidak dapat diskalakan. Lihat https://aka.ms/msal-net-cca-token-cache-serialization
SystemWebviewOptionsNotApplicable

Apa yang terjadi?

Anda mengonfigurasi autentikasi interaktif MSAL untuk menggunakan WebView yang disematkan dan Anda juga mengonfigurasi SystemWebViewOptions. Ini saling eksklusif.

Mitigation

Atur WithUseEmbeddedWebView(Boolean) ke true atau jangan gunakan WithSystemWebViewOptions(SystemWebViewOptions)
TelemetryConfigOrTelemetryCallback

Apa yang terjadi?

Anda telah mengonfigurasi panggilan balik telemetri dan konfigurasi telemetri.

Mitigation

Hanya satu mekanisme telemetri yang dapat dikonfigurasi.
TenantDiscoveryFailedError

Penemuan penyewa gagal.

Apa yang terjadi?

Saat membaca konfigurasi OpenId yang terkait dengan otoritas, titik akhir Otorisasi, atau Titik akhir Token, atau Penerbit tidak ditemukan

Mitigation

Ini menunjukkan dan otoritas yang tidak mematuhi Open ID Connect. Tentukan otoritas yang berbeda dalam konstruktor aplikasi, atau pengambilalihan akuisisi token ///
TenantOverrideNonAad

Apa yang terjadi?

Anda mengonfigurasi WithTenant pada tingkat permintaan, tetapi aplikasi menggunakan otoritas non-AAD Ini saling eksklusif.

Mitigation

WithTenantId hanya dapat digunakan bersama dengan otoritas AAD.
TokenCacheNullError
Kedaluwarsa.

Kode kesalahan ini kembali dari AcquireTokenSilent(IEnumerable<String>, IAccount) panggilan ketika cache pengguna belum diatur dalam konstruktor aplikasi. Ini seharusnya tidak pernah terjadi di MSAL.NET 3.x karena cache dibuat oleh aplikasi

TokenTypeMismatch

Apa yang terjadi?

Anda meminta satu jenis token, tetapi tidak menerimanya.

Mitigation

Ini terjadi jika Penyedia Identitas (AAD, B2C, ADFS, dll.) tidak mendukung / menerapkan jenis token yang diminta. Dalam kasus ADFS, pertimbangkan untuk meningkatkan ke versi terbaru.
UapCannotFindDomainUser

Tidak dapat mengakses pengguna dari OS (UWP)

Apa yang terjadi

Anda memanggil AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>), tetapi nama pengguna domain tidak dapat ditemukan.

Mitigation

Ini mungkin karena Anda perlu menambahkan lebih banyak kemampuan ke aplikasi UWP Anda di Package.appxmanifest. Lihat https://aka.ms/msal-net-uwp
UapCannotFindUpn

Tidak dapat memperoleh pengguna dari OS (UWP)

Apa yang terjadi

Anda memanggil AcquireTokenByIntegratedWindowsAuth(IEnumerable<String>), tetapi nama pengguna domain tidak dapat ditemukan.

Mitigation

Ini mungkin karena Anda perlu menambahkan lebih banyak kemampuan ke aplikasi UWP Anda di Package.appxmanifest. Lihat https://aka.ms/msal-net-uwp
UnableToParseAuthenticationHeader

MSAL tidak dapat mengurai header autentikasi yang dikembalikan dari titik akhir. Ini bisa menjadi hasil dari header cacat yang dikembalikan di koleksi WWW-Authenticate atau Authentication-Info.

UnauthorizedClient

Klien tidak sah untuk mengakses sumber daya. Ini biasanya terjadi ketika kebijakan Mobile App Management (MAM) diaktifkan. MSAL akan memberikan pengecualian dalam hal ini dengan protection_policy_required sub-kesalahan.

Mitigation

Tangkap pengecualian dan gunakan properti di dalamnya untuk mendapatkan parameter yang tepat dari Intune SDK. IntuneAppProtectionPolicyRequiredException
UnknownBrokerError

Terjadi kesalahan broker yang tidak diketahui.

Mitigation

Tidak ada. Anda mungkin ingin memberi tahu pengguna akhir.
UnknownError

Terjadi Kesalahan Tidak Diketahui.

Mitigation

Tidak ada. Anda mungkin ingin memberi tahu pengguna akhir.
UnknownManagedIdentityError

Respons kesalahan tidak diketahui diterima.

UnknownUser

Apa yang terjadi

Anda bisa mendapatkan kesalahan ini saat menggunakan AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) Pengguna tidak diketahui oleh IdP

Mitigation

Beri tahu pengguna. Login yang disediakan pengguna mungkin salah (misalnya kosong)
UnknownUserType

Apa yang terjadi

Anda bisa mendapatkan kesalahan ini saat menggunakan AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) Pengguna tidak dikenali sebagai pengguna terkelola, atau pengguna federasi. Azure AD tidak dapat mengidentifikasi IdP yang perlu memproses pengguna

Mitigation

Beri tahu pengguna. login yang disediakan pengguna mungkin salah.
UpnRequired

loginHint harus menjadi UPN

Apa yang terjadi?

Penimpaan operasi akuisisi token dipanggil di IPublicClientApplication mana mengambil loginHint sebagai parameter, tetapi petunjuk masuk ini tidak menggunakan format UserPrincipalName (UPN), misalnya john.doe@contoso.com yang diharapkan oleh layanan

Remediation

Pastikan dalam kode yang Anda terapkan loginHint untuk menjadi UPN
UserAssertionNullError

Kode kesalahan ini kembali dari AcquireTokenOnBehalfOf(IEnumerable<String>, UserAssertion) panggilan ketika pernyataan pengguna null diteruskan sebagai UserAssertion parameter .

Mitigation

Meneruskan nilai yang valid untuk pernyataan pengguna
UserAssignedManagedIdentityNotConfigurableAtRuntime

Identitas terkelola yang ditetapkan pengguna tidak dapat dikonfigurasi pada runtime untuk service fabric.

UserAssignedManagedIdentityNotSupported

Identitas terkelola yang ditetapkan pengguna tidak didukung untuk sumber ini.

UserMismatch

Ketidakcocokan Pengguna.

UserNullError

Kode kesalahan ini kembali dari AcquireTokenSilent(IEnumerable<String>, IAccount) panggilan ketika pengguna null diteruskan sebagai account parameter . Ini bisa karena Anda telah memanggil AcquireTokenSilent dengan parameter yang account diatur ke accounts.FirstOrDefault() tetapi accounts kosong.

Mitigation

Meneruskan akun lain, atau memanggil AcquireTokenInteractive(IEnumerable<String>)
UserRealmDiscoveryFailed

Penemuan Realm Pengguna Gagal.

ValidateAuthorityOrCustomMetadata

Apa yang terjadi?

Anda telah mengonfigurasi metadata instans Anda sendiri, dan juga telah menetapkan otoritas validasi ke true. Ini saling eksklusif.

Mitigation

Atur bendera otoritas validasi ke false. Lihat https://aka.ms/msal-net-custom-instance-metadata untuk detail selengkapnya.
WABError

Apa yang terjadi?

Windows Authentication Broker, yang menangani interaksi antara pengguna dan AAD, telah gagal.

Mitigation

Lihat pesan kesalahan untuk detail selengkapnya.
WamFailedToSignout

Pendaftaran WAM gagal.

WamInteractiveError

Pengecualian layanan WAM yang dapat terjadi saat memanggil AcquireTokenInteractive

WamNoB2C

Broker Windows (WAM) hanya didukung bersama dengan akun "kerja dan sekolah" dan dengan akun Microsoft.

WamPickerError

Pengecualian layanan WAM yang dapat terjadi saat memanggil AcquireTokenInteractive dan pemilih akun muncul

WamScopesRequired

Apa yang terjadi?

Tidak ada cakupan yang diminta

Mitigation

Setidaknya satu cakupan harus ditentukan untuk MSAL Runtime WAM
WamUiThread

Saat memanggil AcquireTokenInteractive dengan broker WAM, panggilan harus dilakukan dari utas UI.

WebView2LoaderNotFound

Apa yang terjadi?

Browser WebView2 yang disematkan tidak dapat dimulai karena komponen runtime tidak dapat dimuat.

Mitigation

Untuk detail pemecahan masalah, lihat https://aka.ms/msal-net-webview2 .
WebView2NotInstalled

Apa yang terjadi?

Browser yang disematkan tidak dapat dimulai karena komponen runtime hilang.

Mitigation

Browser yang disematkan memerlukan runtime WebView2 untuk diinstal. Pengguna akhir aplikasi dapat mengunduh dan menginstal runtime WebView2 dari https://go.microsoft.com/fwlink/p/?LinkId=2124703 dan memulai ulang aplikasi. Pengembang aplikasi bisa mendapatkan versi runtime WebView2 yang dapat didistribusikan.
WebviewUnavailable

WebView yang dipilih tidak tersedia pada platform ini. Anda dapat beralih ke WebView lain menggunakan WithUseEmbeddedWebView(Boolean). Lihat https://aka.ms/msal-net-os-browser untuk detailnya

WsTrustEndpointNotFoundInMetadataDocument

WS-Trust Titik Akhir Tidak Ditemukan di Dokumen Metadata.

Berlaku untuk