HttpClientHandler.DangerousAcceptAnyServerCertificateValidator Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un delegato memorizzato nella cache che restituisce sempre true
.
public:
static property Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ DangerousAcceptAnyServerCertificateValidator { Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ get(); };
public static Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2?,System.Security.Cryptography.X509Certificates.X509Chain?,System.Net.Security.SslPolicyErrors,bool> DangerousAcceptAnyServerCertificateValidator { get; }
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2?,System.Security.Cryptography.X509Certificates.X509Chain?,System.Net.Security.SslPolicyErrors,bool> DangerousAcceptAnyServerCertificateValidator { get; }
public static Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Chain,System.Net.Security.SslPolicyErrors,bool> DangerousAcceptAnyServerCertificateValidator { get; }
static member DangerousAcceptAnyServerCertificateValidator : Func<System.Net.Http.HttpRequestMessage, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors, bool>
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member DangerousAcceptAnyServerCertificateValidator : Func<System.Net.Http.HttpRequestMessage, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors, bool>
Public Shared ReadOnly Property DangerousAcceptAnyServerCertificateValidator As Func(Of HttpRequestMessage, X509Certificate2, X509Chain, SslPolicyErrors, Boolean)
Valore della proprietà
Delegato memorizzato nella cache che restituisce sempre true
.
- Attributi
Commenti
In particolare negli scenari di test, un modello comune usa HttpClient per connettersi a un server con un certificato che non deve essere convalidato, ad esempio un certificato autofirmato. Questa operazione HttpClientHandler viene eseguita in genere impostando la proprietà su un delegato che restituisce True
sempre . Questo indica che il certificato ha superato la ServerCertificateCustomValidationCallback convalida. Tuttavia, non tutte le implementazioni supportano questo callback e alcuni generano PlatformNotSupportedException.
La DangerousAcceptAnyServerCertificateValidator proprietà risolve questa limitazione. Il delegato restituito dalla DangerousAcceptAnyServerCertificateValidator proprietà può essere assegnato alla proprietà, come illustrato nell'esempio ServerCertificateCustomValidationCallback seguente:
handler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;
Ciò offre HttpClientHandler implementazioni di un'identità di riferimento a oggetti nota che esprime l'intenzione dello sviluppatore. Se l'oggetto archiviato nella ServerCertificateCustomValidationCallback proprietà è uguale a DangerousAcceptAnyServerCertificateValidator, il runtime è in grado di disabilitare completamente la convalida in una piattaforma che in caso contrario genera un PlatformNotSupportedExceptionoggetto .
Come vantaggio collaterale, gli sviluppatori possono usare questa proprietà per semplificare l'uso degli strumenti per contrassegnare il pericolo di disabilitazione della convalida del certificato, consentendo agli sviluppatori di evitare la spedizione di applicazioni non sicure.