Dela via


HttpSys: Omförhandling av klientcertifikat har inaktiverats som standard

Alternativet att omförhandla en anslutning och begära ett klientcertifikat har inaktiverats som standard. Mer information finns i problem med dotnet/aspnetcore#23181.

Version introducerad

ASP.NET Core 5.0

Gammalt beteende

Anslutningen kan omförhandlas för att begära ett klientcertifikat.

Nytt beteende

Klientcertifikat kan bara begäras under den första handskakningen för anslutningen. Mer information finns i pull-begärande dotnet/aspnetcore#23162.

Orsak till ändringen

Omförhandlingen orsakade ett antal prestanda- och dödlägesproblem. Det stöds inte heller i HTTP/2. Ytterligare kontext från när alternativet för att styra det här beteendet introducerades i ASP.NET Core 3.1 finns i problem med dotnet/aspnetcore#14806.

Appar som kräver klientcertifikat bör använda netsh.exe för att ange clientcertnegotiation alternativet till enabled. Mer information finns i netsh http-kommandon.

Om du bara vill att klientcertifikat ska aktiveras för vissa delar av appen kan du läsa vägledningen på Valfria klientcertifikat.

Om du behöver det gamla omförhandlingsbeteendet anger du HttpSysOptions.ClientCertificateMethod det gamla värdet ClientCertificateMethod.AllowRenegotiate. Detta rekommenderas inte av de skäl som beskrivs ovan och i den länkade vägledningen.

Berörda API:er