MicrosoftIdentityMessageHandler Konstruktory
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
| Nazwa | Opis |
|---|---|
| MicrosoftIdentityMessageHandler(IAuthorizationHeaderProvider, MicrosoftIdentityMessageHandlerOptions, ILogger<MicrosoftIdentityMessageHandler>) |
Inicjuje nowe wystąpienie klasy MicrosoftIdentityMessageHandler. |
| MicrosoftIdentityMessageHandler(IAuthorizationHeaderProvider, MicrosoftIdentityMessageHandlerOptions, IMsalMtlsHttpClientFactory, ILogger<MicrosoftIdentityMessageHandler>) |
Inicjuje MicrosoftIdentityMessageHandler nowe wystąpienie klasy z obsługą powiązania tokenu mTLS PoP. |
MicrosoftIdentityMessageHandler(IAuthorizationHeaderProvider, MicrosoftIdentityMessageHandlerOptions, ILogger<MicrosoftIdentityMessageHandler>)
Inicjuje nowe wystąpienie klasy MicrosoftIdentityMessageHandler.
public MicrosoftIdentityMessageHandler(Microsoft.Identity.Abstractions.IAuthorizationHeaderProvider headerProvider, Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions? defaultOptions = default, Microsoft.Extensions.Logging.ILogger<Microsoft.Identity.Web.MicrosoftIdentityMessageHandler>? logger = default);
new Microsoft.Identity.Web.MicrosoftIdentityMessageHandler : Microsoft.Identity.Abstractions.IAuthorizationHeaderProvider * Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions * Microsoft.Extensions.Logging.ILogger<Microsoft.Identity.Web.MicrosoftIdentityMessageHandler> -> Microsoft.Identity.Web.MicrosoftIdentityMessageHandler
Public Sub New (headerProvider As IAuthorizationHeaderProvider, Optional defaultOptions As MicrosoftIdentityMessageHandlerOptions = Nothing, Optional logger As ILogger(Of MicrosoftIdentityMessageHandler) = Nothing)
Parametry
- headerProvider
- IAuthorizationHeaderProvider
Używany do uzyskiwania IAuthorizationHeaderProvider nagłówków autoryzacji dla żądań wychodzących. Jest to zwykle uzyskiwane z kontenera wstrzykiwania zależności.
- defaultOptions
- MicrosoftIdentityMessageHandlerOptions
Domyślne opcje uwierzytelniania, które będą używane dla wszystkich żądań, chyba że zastąpić żądanie przy użyciu polecenia WithAuthenticationOptions(HttpRequestMessage, MicrosoftIdentityMessageHandlerOptions).
Jeśli nullkażde żądanie musi określić własne opcje uwierzytelniania lub zostanie zgłoszony wyjątek.
Opcjonalny rejestrator do debugowania i monitorowania operacji uwierzytelniania. Jeśli zostanie podana, program obsługi będzie rejestrować informacje o pozyskiwaniu tokenów, wyzwaniach i błędach.
Wyjątki
Zgłaszany, gdy headerProvider ma wartość null.
Przykłady
Podstawowe użycie z opcjami domyślnymi:
var handler = new MicrosoftIdentityMessageHandler(
headerProvider,
new MicrosoftIdentityMessageHandlerOptions
{
Scopes = { "https://api.example.com/.default" }
});
Użycie bez opcji domyślnych (wymagana konfiguracja na żądanie):
var handler = new MicrosoftIdentityMessageHandler(headerProvider);
// Each request must specify options
var request = new HttpRequestMessage(HttpMethod.Get, "/api/data")
.WithAuthenticationOptions(options =>
options.Scopes.Add("custom.scope"));
Użycie z rejestrowaniem:
var logger = serviceProvider.GetService<ILogger<MicrosoftIdentityMessageHandler>>();
var handler = new MicrosoftIdentityMessageHandler(headerProvider, defaultOptions, logger);
Uwagi
Parametr defaultOptions zapewnia wygodny sposób ustawiania opcji uwierzytelniania, które mają zastosowanie do wszystkich żądań wysyłanych za pośrednictwem tego wystąpienia programu obsługi. Poszczególne żądania nadal mogą zastąpić te wartości domyślne przy użyciu metod rozszerzeń.
Po logger podaniu program obsługi będzie rejestrował się na różnych poziomach:
- Debugowania: Dodawanie nagłówka autoryzacji zakończonej powodzeniem
- Informacje: WWW-Authenticate wykrywanie i obsługa wyzwań
- Ostrzeżenie: Błędy obsługi wyzwań
- Błąd: Niepowodzenia pozyskiwania tokenów
Dotyczy
MicrosoftIdentityMessageHandler(IAuthorizationHeaderProvider, MicrosoftIdentityMessageHandlerOptions, IMsalMtlsHttpClientFactory, ILogger<MicrosoftIdentityMessageHandler>)
Inicjuje MicrosoftIdentityMessageHandler nowe wystąpienie klasy z obsługą powiązania tokenu mTLS PoP.
public MicrosoftIdentityMessageHandler(Microsoft.Identity.Abstractions.IAuthorizationHeaderProvider headerProvider, Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions? defaultOptions, Microsoft.Identity.Client.IMsalMtlsHttpClientFactory? mtlsHttpClientFactory, Microsoft.Extensions.Logging.ILogger<Microsoft.Identity.Web.MicrosoftIdentityMessageHandler>? logger = default);
new Microsoft.Identity.Web.MicrosoftIdentityMessageHandler : Microsoft.Identity.Abstractions.IAuthorizationHeaderProvider * Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions * Microsoft.Identity.Client.IMsalMtlsHttpClientFactory * Microsoft.Extensions.Logging.ILogger<Microsoft.Identity.Web.MicrosoftIdentityMessageHandler> -> Microsoft.Identity.Web.MicrosoftIdentityMessageHandler
Public Sub New (headerProvider As IAuthorizationHeaderProvider, defaultOptions As MicrosoftIdentityMessageHandlerOptions, mtlsHttpClientFactory As IMsalMtlsHttpClientFactory, Optional logger As ILogger(Of MicrosoftIdentityMessageHandler) = Nothing)
Parametry
- headerProvider
- IAuthorizationHeaderProvider
Używany do uzyskiwania IAuthorizationHeaderProvider nagłówków autoryzacji dla żądań wychodzących. Jest to zwykle uzyskiwane z kontenera wstrzykiwania zależności.
- defaultOptions
- MicrosoftIdentityMessageHandlerOptions
Domyślne opcje uwierzytelniania, które będą używane dla wszystkich żądań, chyba że zostaną zastąpione dla poszczególnych żądań.
Jeśli nullkażde żądanie musi określić własne opcje uwierzytelniania lub zostanie zgłoszony wyjątek.
- mtlsHttpClientFactory
- IMsalMtlsHttpClientFactory
Opcjonalna fabryka do tworzenia klientów HTTP skonfigurowanych przy użyciu certyfikatów klienta mTLS dla scenariuszy powiązania tokenu (mTLS PoP). W przypadku ustawienia i ProtocolScheme ustawiona "MTLS_POP"na wartość program obsługi użyje tej fabryki do utworzenia klienta HTTP z certyfikatem powiązania i wysyłania żądań za jego pośrednictwem.
Opcjonalny rejestrator do debugowania i monitorowania operacji uwierzytelniania.
Wyjątki
Zgłaszany, gdy headerProvider ma wartość null.
Uwagi
Powiązanie tokenu mTLS PoP (wzajemnego dowodu posiadania protokołu TLS), zgodnie z opisem w artykule RFC 8705, kryptograficznie wiąże tokeny dostępu z określonym certyfikatem X.509. Po włączeniu program obsługi uzyskuje powiązany token z odciskiem palca certyfikatu w oświadczeniu cnf , tworzy klienta HTTP mTLS z certyfikatem powiązania i wysyła żądania za pośrednictwem kanału mTLS.
Powiązanie tokenu obsługuje obecnie tylko tokeny aplikacji (tylko dla aplikacji). Ustaw opcję RequestAppToken na true.
Preferuj MicrosoftIdentityHttpClientBuilderExtensions używanie metod rozszerzenia, aby skonfigurować tę procedurę obsługi za pomocą wstrzykiwania zależności, a nie bezpośredniego tworzenia wystąpienia.