Scentralizowana konfiguracja i zabezpieczenia aplikacji

Identyfikator Microsoft Entra
Azure App Configuration
Azure Key Vault

Pomysły dotyczące rozwiązań

Ten artykuł jest pomysłem na rozwiązanie. Jeśli chcesz, abyśmy rozszerzyli zawartość o więcej informacji, takich jak potencjalne przypadki użycia, alternatywne usługi, zagadnienia dotyczące implementacji lub wskazówki dotyczące cen, daj nam znać, przekazując opinię w usłudze GitHub.

W tym artykule opisano rozwiązanie do tworzenia niezawodnej i skalowalnej aplikacji w środowisku rozproszonym. Rozwiązanie używa aplikacja systemu Azure Configuration i Azure Key Vault do zarządzania ustawieniami konfiguracji aplikacji, flagami funkcji i ustawieniami bezpiecznego dostępu w jednym miejscu oraz zarządzania nimi.

Architektura

Na poniższych diagramach pokazano, jak usługa App Configuration i usługa Key Vault mogą współpracować w celu zarządzania aplikacjami i zabezpieczania ich w środowiskach deweloperskich i platformy Azure .

Środowisko projektowe

W środowisku projektowym aplikacja używa tożsamości za pośrednictwem programu Visual Studio lub wersji 2.0 interfejsu wiersza polecenia platformy Azure do logowania się i wysyłania żądania uwierzytelniania do identyfikatora Entra firmy Microsoft.

Diagram architektury przedstawiający sposób logowania i uwierzytelniania aplikacji w środowisku projektowym.

Pobierz plik programu Visio tej architektury.

Środowisko przejściowe lub produkcyjne platformy Azure

Środowiska przejściowe i produkcyjne platformy Azure używają tożsamości zarządzanej do logowania i uwierzytelniania.

Diagram architektury przedstawiający sposób logowania i uwierzytelniania aplikacji w środowisku przejściowym lub produkcyjnym.

Pobierz plik programu Visio tej architektury.

Przepływ danych

  1. Aplikacja wysyła żądanie uwierzytelniania podczas debugowania w programie Visual Studio lub uwierzytelnia się za pośrednictwem tożsamości usługi zarządzanej na platformie Azure.
  2. Po pomyślnym uwierzytelnieniu identyfikator Entra firmy Microsoft zwraca token dostępu.
  3. Zestaw SDK usługi App Configuration wysyła żądanie z tokenem dostępu, aby odczytać wartość identyfikatora secretURI usługi App Configuration aplikacji dla magazynu kluczy aplikacji.
  4. Po pomyślnym uwierzytelnieniu usługa App Configuration wysyła wartość konfiguracji.
  5. Korzystając z tożsamości logowania, aplikacja wysyła żądanie do usługi Key Vault w celu pobrania wpisu tajnego aplikacji dla identyfikatora tajnego wysłanego przez usługę App Configuration.
  6. Po pomyślnym uwierzytelnieniu usługa Key Vault zwraca wartość wpisu tajnego.

Składniki

Szczegóły scenariusza

Aplikacje oparte na chmurze często działają na wielu maszynach wirtualnych lub kontenerach w wielu regionach i korzystają z wielu usług zewnętrznych. Tworzenie niezawodnej i skalowalnej aplikacji w środowisku rozproszonym stanowi istotne wyzwanie.

Za pomocą usługi App Configuration można zarządzać wszystkimi ustawieniami konfiguracji aplikacji, flagami funkcji i ustawieniami bezpiecznego dostępu oraz przechowywać je w jednym miejscu. Usługa App Configuration bezproblemowo współpracuje z usługą Key Vault, która przechowuje hasła, klucze i wpisy tajne w celu zapewnienia bezpiecznego dostępu.

Potencjalne przypadki użycia

Każda aplikacja może korzystać z usługi App Configuration, ale większość z nich korzystają następujące typy aplikacji:

  • Mikrousługi uruchomione w usłudze Azure Kubernetes Service (AKS) lub innych konteneryzowanych aplikacjach wdrożonych w co najmniej jednym regionie.
  • Aplikacje bezserwerowe, które obejmują usługę Azure Functions lub inne aplikacje obliczeniowe bezstanowe oparte na zdarzeniach.
  • Aplikacje korzystające z potoku ciągłego wdrażania (CD).

Kwestie wymagające rozważenia

Te zagadnienia implementują filary struktury Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.

  • Najlepiej używać innego magazynu kluczy dla każdej aplikacji w każdym środowisku: programowania, przedprodukcyjnego platformy Azure i produkcji platformy Azure. Korzystanie z różnych magazynów pomaga zapobiegać udostępnianiu wpisów tajnych w środowiskach i zmniejsza zagrożenia w przypadku naruszenia zabezpieczeń.

  • Aby korzystać z tych scenariuszy, tożsamość logowania musi mieć rolę Czytelnik danych konfiguracji aplikacji w zasobie App Configuration i mieć jawne zasady dostępu do pobierania wpisów tajnych w usłudze Key Vault.

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.

Główny autor:

Następne kroki

Dowiedz się więcej o technologiach składników: