Kestrel: Domyślne powiązanie HTTPS zostało usunięte
Domyślny adres HTTPS i port zostały usunięte z usługi Kestrel na platformie .NET 7. Ta zmiana jest częścią dotnet/aspnetcore#42016, co poprawi ogólne środowisko dewelopera podczas pracy z protokołem HTTPS.
Wprowadzona wersja
ASP.NET Core 7.0
Poprzednie zachowanie
Wcześniej, jeśli nie określono jawnie żadnych wartości dla adresu i portu, ale lokalny certyfikat dewelopera był dostępny, Kestrel domyślnie powiązanie z parametrami i http://localhost:5000
https://localhost:5001
.
Nowe zachowanie
Użytkownicy muszą teraz ręcznie powiązać się z protokołem HTTPS i jawnie określić adres i port za pomocą jednego z następujących środków:
- Plik uruchamiania Ustawienia.json
- Zmienna środowiskowa
ASPNETCORE_URLS
--urls
Argument wiersza poleceniaurls
Klucz konfiguracji hosta- UseUrls(IWebHostBuilder, String[]) Metoda rozszerzenia
Powiązanie HTTP pozostaje niezmienione.
Typ zmiany powodującej niezgodność
Ta zmiana ma wpływ na zgodność binarną.
Przyczyna wprowadzenia zmiany
Poprzednie zachowanie chętnego powiązania występuje bez względu na skonfigurowane środowisko i może prowadzić do złego środowiska deweloperskiego, gdy certyfikat nie został jeszcze zaufany (jest to zaufany jako główny urząd certyfikacji, ponieważ jest podpisany samodzielnie). Klienci często generują słabe środowisko użytkownika podczas uzyskiwania dostępu do punktu końcowego HTTPS z niezaufanym certyfikatem. Na przykład mogą one zakończyć się niepowodzeniem w trybie dyskretnym lub wyświetlić komunikat o błędzie lub ekranie ostrzegawczym, który alarmuje użytkownika.
Zalecana akcja
Jeśli nie używasz powiązania domyślnego https://localhost:5001
, nie są wymagane żadne zmiany. Jeśli jednak używasz tego powiązania, zobacz Konfigurowanie punktów końcowych dla serwera internetowego ASP.NET Core Kestrel, aby dowiedzieć się, jak zaktualizować serwer w celu włączenia protokołu HTTPS.
Dotyczy interfejsów API
Nie dotyczy