Microsoft wydał w tym tygodniu Podgląd 6 Dla projektu .NET Aspire. Wprowadzono istotne zmiany mające na celu zwiększenie bezpieczeństwa i niezawodności platformy. To wydanie, wersja 8.0.0-preview.6.24214.1, wprowadza kilka godnych uwagi dodatków, takich jak zmiany związane z szablonami, komponentami, dashboardem, testowaniem i nie tylko.
Godne uwagi zmiany wśród tych zmian są powiązane Interfejs API wykrywania usług I Usuń wszystkie stare interfejsy API. Zespół ogłasza także więcej przełomowych zmian, zanim interfejs API przejdzie do wersji stabilnej.
Wprowadzono kilka modyfikacji mających na celu poprawę bezpieczeństwa platformy .NET Aspire. Te ulepszenia obejmują zabezpieczanie komunikacji między różnymi składnikami, takimi jak orkiestrator, środowisko IDE i pulpit nawigacyjny, poprzez użycie kluczy TLS i interfejsów API do uwierzytelniania. Jak pokazano
Uniemożliwia to nieautoryzowanym użytkownikom dostęp do potencjalnie poufnych informacji udostępnianych przez projekt hosta aplikacji i pulpit nawigacyjny podczas działania lokalnego na urządzeniu.
Dużą zmianą w tej wersji jest dodanie wymagań dotyczących uwierzytelniania dla Uzyskaj dostęp do pulpitu nawigacyjnego. Ze względu na wrażliwy charakter danych wyświetlanych na pulpicie nawigacyjnym, takich jak szczegóły konfiguracji i dane telemetryczne, uwierzytelnianie jest obecnie obowiązkowe nawet w lokalnych środowiskach programistycznych.
W przypadku użytkowników uzyskujących dostęp do aplikacji .NET Aspire za pośrednictwem programu Visual Studio lub zestawu C# Dev Kit dla Visual Studio Code uwierzytelnianie przebiega bezproblemowo bez konieczności napotykania strony logowania, dzięki zaktualizowanym narzędziom Aspire. Jednak użytkownicy wdrażający aplikacje .NET Aspire za pomocą wiersza poleceń będą musieli najpierw zalogować się do pulpitu nawigacyjnego. Wymagany token znajduje się w wynikach konsoli, aby użytkownicy mogli go skopiować i wkleić na stronie logowania, tworząc trwały plik cookie uwierzytelniania.
(Trwały plik cookie uwierzytelniający, źródło: Dokumentacja Microsoftu)
Wersja zapoznawcza 6 oferuje następujące dodatki: Aspire.hosting.Qdrant Który zapewnia definicję zasobu dla konfiguracji A Baza danych wektorów Qdrant Zasoby w ramach .NET Aspire AppHost. Podczas gdy dzwoni inny klient, Klient Aspire.Qdrantzapewnia bibliotekę do interakcji z bazą danych wektorów Qdrant.
W sprawie Aktualizacje AppHostaWersja Preview 6 oferuje kilka nowych interfejsów API i funkcji, w tym możliwość definiowania przez użytkowników niestandardowych argumentów środowiska wykonawczego kontenera, programowego przekazywania argumentów zasobów projektu, dostosowywania nazw zmiennych środowiskowych dla parametrów połączenia i zapewniania zgodności z innymi środowiskami wykonawczymi kontenerów za pośrednictwem kwalifikowanego kontenera Pełny kino.
W oficjalnym oświadczeniu zespół podkreślił wagę tego wydarzenia Testy W procesie rozwoju wprowadzono nowe testowe interfejsy API, aby pomóc w testowaniu aplikacji Aspire, zgodnie ze wzorcem podobnym do WebApplicationFactory w ASP.NET Core.
using System.Net;
namespace AspireApp.Tests;
public class WebTests
{
[Fact]
public async Task GetWebResourceRootReturnsOkStatusCode()
{
// Arrange
var appHost = await DistributedApplicationTestingBuilder.CreateAsync<Projects.AspireApp_AppHost>();
await using var app = await appHost.BuildAsync();
await app.StartAsync();
// Act
var httpClient = app.CreateHttpClient("webfrontend");
var response = await httpClient.GetAsync("https://www.infoq.com/");
// Assert
Assert.Equal(HttpStatusCode.OK, response.StatusCode);
}
}
(źródło: Dokumentacja Microsoftu)
Ponadto wprowadzono aktualizacje do najnowszych stabilnych wersji pakietu OpenTelemetry SDK i pakietów Instrumentation, aby uprościć konfigurację źródła OTLP przy użyciu nowszych interfejsów API. Jak już wspomniano, ta funkcja automatyzuje konfigurację źródła OTLP, kierując metryki, ślady i dzienniki do określonego punktu końcowego OTLP określonego w OTEL_EXPORTER_OTLP_ENDPOINT Zmienne środowiska.
Ponadto w przypadku OpenTelemetry usunięto zależności z wersji przedpremierowych i tam, gdzie było to możliwe, zastąpiono je najnowszymi stabilnymi wersjami. Ponadto polegając na OpenTelemetry.Instrumentation.EventCounters Zostało usunięte.
Pakiety obsługi administracyjnej platformy Azure Został on podzielony na indywidualne pakiety dla każdej usługi, umożliwiając selektywną instalację w oparciu o wymagania użytkownika. Jak już wspomniano, użytkownikom korzystającym bezpośrednio z pakietów aprowizacji platformy Azure zaleca się zaktualizowanie plików projektu w celu odwoływania się do nowych pakietów.
the Interfejs wiersza polecenia dewelopera platformy Azure Teraz obsługuje publikowanie projektów, kontenerów lub plików dokowanych na wielu punktach końcowych, na które zostaną zamapowane Zaloguj się do aplikacji Azure Container.
W końcu o tym poinformowano Zespół .NET Aspire Decydujemy się na wydawanie co miesiąc nowej wersji zapoznawczej, aby osiągnąć stabilną wersję 8.0 do drugiego kwartału 2024 r. W tym miesiącu programiści mogą zapoznać się zarówno z wersją Preview 5, jak i Preview 6.
Firma Microsoft stwierdziła, że te zaplanowane wydania mają na celu zapewnienie programistom spójnych aktualizacji, w tym nowych funkcji i ulepszeń, w trakcie trwającej fazy rozwoju
„Zła entuzjasta podróży. Irytująco skromny ćpun internetu. Nieprzepraszający alkoholiczek”.