Udostępnij przez


Dostarczanie konfiguracji w warstwie Hiperskala dla aplikacji klienckich (wersja zapoznawcza)

Jeśli chodzi o zarządzanie konfiguracją, aplikacje klienckie mają inne wymagania niż aplikacje serwerowe. Nie mogą przechowywać tajemnic, działają na znacznie większą skalę, a użytkownicy oczekują natychmiastowego czasu uruchamiania się z dowolnego miejsca na świecie. Aby spełnić wymagania dotyczące konfiguracji aplikacji po stronie klienta, usługa Azure App Configuration zapewnia integrację z usługą Azure Front Door. Brzegowa sieć dostarczania zawartości oparta na usłudze Azure Front Door, połączona ze scentralizowanym zarządzaniem konfiguracją usługi Azure App Configuration, umożliwia aplikacjom klienckim szybkie, niezawodne i anonimowe pobieranie konfiguracji.

Dostarczanie konfiguracji przyspieszonej przez usługę CDN za pomocą usługi Azure Front Door

Usługa App Configuration zapewnia deweloperom jedno spójne miejsce do definiowania ustawień konfiguracji i flag funkcji. Dzięki integracji usługi Azure App Configuration z usługą Azure Front Door dane konfiguracji są centralnie zarządzane za pośrednictwem usługi Azure App Configuration podczas buforowania i dystrybuowania za pośrednictwem sieci dostarczania zawartości platformy Azure. Ta architektura jest cenna w przypadku aplikacji klienckich, w tym aplikacji mobilnych, klasycznych i opartych na przeglądarce.

Architektura systemu

Diagram architektury umożliwiający integrację usługi Azure Front Door z usługą Azure App Configuration.

Jak to działa

  • Aplikacje klienckie pobierają konfigurację za pośrednictwem punktów końcowych usługi Azure Front Door bez uwierzytelniania, eliminując ryzyko bezpieczeństwa osadzania poświadczeń w kodzie po stronie klienta.
  • Usługa Azure Front Door używa tożsamości zarządzanej do bezpiecznego uwierzytelniania za pomocą usługi Azure App Configuration.
  • Konfigurowalny podzbiór klucz-wartości, flagi funkcji lub migawki są udostępniane za pośrednictwem usługi Azure Front Door.
  • Buforowanie krawędzi umożliwia dostarczanie konfiguracji o wysokiej przepływności i małych opóźnieniach.

Ta architektura eliminuje potrzebę niestandardowych serwerów proxy lub bram przy jednoczesnym zapewnieniu bezpiecznego, wydajnego dostarczania konfiguracji do aplikacji klienckich.

Scenariusze dla deweloperów

Konfiguracja dostarczana przez usługę CDN odblokowuje szereg scenariuszy aplikacji klienckich:

  • Wdrażanie funkcji po stronie klienta dla komponentów interfejsu użytkownika
  • Testowanie A/B lub ukierunkowane doświadczenia korzystające z flag funkcji
  • Kontrolowanie parametrów modelu AI/LLM i zachowań interfejsu użytkownika za pomocą konfiguracji
  • Dynamiczne sterowanie zachowaniem agenta po stronie klienta, trybami bezpieczeństwa i ustawieniami poręczy za pomocą konfiguracji
  • Spójne zachowanie klientów przy użyciu konfiguracji opartej na migawkach

Uwaga / Notatka

Ta funkcja jest obecnie dostępna tylko w chmurze publicznej platformy Azure.

Zalecenia i zagadnienia

Zabezpieczenia

Konfiguracja uwidoczniona za pośrednictwem usługi Azure Front Door jest publicznie dostępna bez uwierzytelniania, co sprawia, że niezbędne są odpowiednie mechanizmy kontroli zabezpieczeń. Zaimplementuj następujące strategie, aby chronić dane konfiguracji przed niezamierzoną ekspozycją.

Użyj dedykowanego magazynu App Configuration

Rozważ użycie dedykowanego magazynu App Configuration dla konfiguracji ukierunkowanej na klienta, dostarczanej za pośrednictwem Azure Front Door. Ten magazyn powinien zawierać tylko niewrażliwe ustawienia, które są bezpieczne do użytku publicznego. Ta strategia izolacji ogranicza potencjalny wpływ, jeśli konfiguracja jest przypadkowo uwidoczniona, zapewniając, że poufne dane pozostają chronione.

Kontrola dostępu oparta na rolach przy użyciu tożsamości zarządzanej

Usługa Azure Front Door uzyskuje dostęp do danych usługi App Configuration przy użyciu tożsamości zarządzanej przypisanej przez system lub tożsamości zarządzanej przypisanej przez użytkownika. Wybrana tożsamość musi mieć przypisaną App Configuration Data Reader rolę w celu pobrania danych konfiguracji. Po utworzeniu punktu końcowego usługi Azure Front Door za pośrednictwem portalu App Configuration to przypisanie roli jest tworzone automatycznie. W portalu zostanie wyświetlone ostrzeżenie, jeśli proces tworzenia przypisania roli napotka jakiekolwiek problemy. Ogranicz tożsamość zarządzaną do roli App Configuration Data Reader tylko i unikaj przypisywania jakichkolwiek ról z uprawnieniami do zapisu.

Określanie zakresu żądań

Skonfiguruj co najmniej jeden filtr, aby kontrolować, które żądania mogą być przekazywane przez usługę Azure Front Door. Zapobiega to pomijaniu pamięci podręcznej usługi CDN przez anonimowych klientów poprzez nadmierne lub źle sformułowane żądania, które mogą przeciążyć usługę App Configuration i wyzwolić ograniczanie działania usługi.

Określanie zakresu żądań za pomocą filtrów klucz-wartość

  • Skonfiguruj filtry usługi Azure Front Door, aby dokładnie odpowiadały wymaganiom konfiguracji aplikacji. Uwidaczniaj tylko dokładne wzorce kluczy używane przez aplikację. Jeśli na przykład aplikacja ładuje klucze z prefiksem "App1:", skonfiguruj regułę usługi Azure Front Door, aby zezwalać tylko na klucze z "App1:", a nie szersze wzorce, takie jak "App".

  • Jeśli aplikacja ładuje flagi funkcji, podaj ".appconfig.featureflag/{YOUR-FEATURE-FLAG-PREFIX}" filtr dla klucza z operatorem 'rozpoczyna się od'.

  • Jeśli używasz bibliotek dostawcy usługi App Configuration i twoja aplikacja ładuje tylko flagi funkcji, należy dodać dwa filtry kluczy w regułach usługi Azure Front Door — jeden dla kluczy ALL bez etykiety, a drugi dla wszystkich kluczy rozpoczynających się od ".appconfig.featureflag/{YOUR-FEATURE-FLAG-PREFIX}". Jest tak dlatego, że biblioteki dostawcy App Configuration domyślnie ładują wszystkie wartości kluczy bez etykiety, jeśli selektor klucz-wartość nie jest określony.

Określanie zakresu żądań za pośrednictwem wielu punktów końcowych usługi Azure Front Door

Utwórz oddzielne punkty końcowe usługi Azure Front Door dla aplikacji z różnymi wymaganiami konfiguracji. Zamiast łączyć wiele reguł filtrowania w jednym punkcie końcowym, każda aplikacja łączy się z dedykowanym punktem końcowym z dokładnie określonymi filtrami. Takie podejście uniemożliwia aplikacjom uzyskiwanie dostępu do danych konfiguracji i upraszcza zarządzanie filtrami.

Failover i równoważenie obciążenia

Aplikacje klienckie korzystają z usługi Azure Front Door na potrzeby trybu failover i równoważenia obciążenia, ponieważ nie łączą się bezpośrednio z usługą App Configuration. Aby włączyć automatyczne przełączanie awaryjne i dostarczanie konfiguracji z nadmiarowością geograficzną, skonfiguruj repliki usługi App Configuration jako źródła w punkcie końcowym usługi Azure Front Door. Aby uzyskać szczegółowe informacje na temat zwiększania dostępności i wydajności grup pochodzenia, zobacz Metody routingu usługi Azure Front Door

Caching

Skonfiguruj czas trwania pamięci podręcznej usługi Azure Front Door, aby zrównoważyć świeżość konfiguracji i obciążenie źródła. Usługa Azure Front Door kontroluje zachowanie buforowania, co oznacza, że aktualizacje z usługi App Configuration mogą być widoczne tylko przez aplikację po wygaśnięciu pamięci podręcznej usługi Front Door. Czas wygaśnięcia pamięci podręcznej staje się skutecznie minimalnym czasem, jaki musi upłynąć, zanim aplikacja będzie mogła zauważyć nowe wartości konfiguracji, niezależnie od tego, jak często sprawdza zmiany.

Zalecamy ustawienie czasu wygaśnięcia pamięci podręcznej usługi Azure Front Door na co najmniej 10 minut, a interwał odświeżania aplikacji na co najmniej 1 minutę. W przypadku tych ustawień aktualizacje konfiguracji mogą propagować się do 11 minut: czas życia pamięci podręcznej Azure Front Door wynosi 10 minut, plus do 1 minuty do następnego odświeżenia aplikacji.

Możesz wybrać odpowiednie wartości interwału odświeżania, które pasują do aplikacji. Krótszy czas trwania pamięci podręcznej zwiększy liczbę żądań kierowanych przez usługę Azure Front Door. Ten model zapewnia spójność ostateczną, a nie propagację w czasie rzeczywistym, która jest oczekiwana w przypadku dostarczania opartego na usłudze CDN. Dowiedz się więcej na temat keszowania w usłudze Azure Front Door.

Uwaga / Notatka

Usługa Azure Front Door nie udziela żadnych gwarancji dotyczących czasu przechowywania zawartości w pamięci podręcznej. Buforowana zawartość może zostać usunięta z pamięci podręcznej krawędzi przed wygaśnięciem zawartości, jeśli zawartość nie jest często używana. Ponadto jeśli usługa App Configuration jest niedostępna, usługa Azure Front Door może nadal obsługiwać nieaktualne dane z pamięci podręcznej w celu zachowania dostępności aplikacji.

Dalsze kroki