已從 SPN 移除 Kerberos 和 Negotiate 的連接埠
搭配 Kerberos 或 Negotiate 驗證使用 HttpClient 時,非預設連接埠不再包含在服務主體名稱 (SPN) 中來查閱服務。 這個新的 .NET 6 行為與 .NET Core 3.1 和更早版本一致。
先前的行為
如果您連線到非預設連接埠上的服務,.NET 5 會在建構 SPN 以查閱服務時包含 port
元件。
新的行為
從 .NET 6 開始,SPN 預設不會使用 port
元件建構,即使是非預設連接埠也是如此。
導入的版本
6.0 RC 1
中斷性變更的類型
這項變更會影響二進位相容性。
變更原因
我們想要從客戶開始使用的 .NET Core 1.0 - 3.1 恢復行為。
建議的動作
如果您需要保留 .NET 5 行為,您可以將應用程式內容參數 System.Net.Http.UsePortInSpn
或環境變數 DOTNET_SYSTEM_NET_HTTP_USEPORTINSPN
設定為 true
。