Podsumowanie architektury klastra regulowanego przez usługę AKS (część 9 z 9)

Azure Kubernetes Service (AKS)
Azure Firewall
Azure Application Gateway
Microsoft Defender for Cloud
Azure Monitor

Platforma Azure Well-Architected Framework to zestaw wskazówek, które mogą służyć do oceny rozwiązania za pomocą filarów jakości doskonałości architektury:

Ten artykuł kończy tę serię. Przeczytaj wprowadzenie.

Te wskazówki zawarte w tej serii zawierają zasady dobrze zaprojektowane we wszystkich wyborach projektowych. Ten artykuł zawiera podsumowanie tych wyborów. Implementacja gitHub: Azure Kubernetes Service (AKS) Baseline Cluster for Regulated Workloads (Klaster bazowy usługi Azure Kubernetes Service (AKS) dla obciążeń regulowanych demonstruje te zasady zgodnie z obowiązującymi zasadami.

Obciążenia PCI DSS 3.2.1 wymagają rygoru bycia dobrze zaprojektowanym rozwiązaniem. Chociaż dostosowanie infrastruktury do wymagań PCI ma kluczowe znaczenie, zgodność nie zatrzymuje się w infrastrukturze hostingu. Nie dotyczy to filarów jakości, w szczególności bezpieczeństwa, może zagrozić zgodności. Dobrze zaprojektowane rozwiązania łączą zarówno perspektywy infrastruktury, jak i obciążeń, aby dotrzeć do rygoru niezbędnego do osiągnięcia zgodnych wyników.

Zabezpieczenia

Postępuj zgodnie z podstawowymi wskazówkami podanymi w zasadach projektowania zabezpieczeń. Najlepsze rozwiązania dotyczące środowiska regulowanego zostały podsumowane w tych sekcjach.

Ład korporacyjny

Implementacja ładu jest oparta na wymaganiach dotyczących zgodności w standardzie PCI-DSS 3.2.1. Ma to wpływ na mechanizmy kontroli technicznej dotyczące utrzymywania segmentacji, uzyskiwania dostępu do zasobów, wykrywania luk w zabezpieczeniach i najważniejszej ochrony danych klientów.

Strategia segmentacji przedsiębiorstwa

Aby zachować pełną izolację, zalecamy wdrożenie regulowanej infrastruktury w ramach autonomicznej subskrypcji. Jeśli masz wiele subskrypcji, które są niezbędne do zapewnienia zgodności, rozważ zgrupowanie ich w hierarchii grup zarządzania, która stosuje odpowiednie zasady platformy Azure jednolicie w ramach subskrypcji w zakresie. W ramach subskrypcji zastosuj powiązane zasady platformy Azure na poziomie subskrypcji, aby przechwycić szerokie zasady, które powinny być stosowane do wszystkich klastrów w środowisku danych posiadaczy kart (CDE). Zastosuj powiązane zasady platformy Azure na poziomie grupy zasobów, aby przechwycić zasady dotyczące określonego wystąpienia klastra. Te zasady tworzą podstawowe zabezpieczenia strefy docelowej.

Izoluj obciążenie PCI (w zakresie) od innych obciążeń (poza zakresem) pod względem operacji i łączności. Izolację można utworzyć, wdrażając oddzielne klastry. Możesz też użyć strategii segmentacji, aby zachować separację. Na przykład klastry używają oddzielnych pul węzłów, aby obciążenia nigdy nie współużytkowane maszyny wirtualnej węzła.

Egzekwowanie zasad

Wymuszanie mechanizmów kontroli zabezpieczeń przez włączenie zasad platformy Azure. Na przykład w tej regulowanej architekturze można zapobiec błędnej konfiguracji środowiska danych posiadaczy kart. Możesz zastosować zasady platformy Azure, które nie zezwalają na publiczne alokacje adresów IP w węzłach maszyny wirtualnej. Takie alokacje są wykrywane i zgłaszane lub blokowane.

Aby uzyskać informacje na temat zasad, które można włączyć dla usługi AKS, zobacz Wbudowane definicje usługi Azure Policy dla usługi Azure Kubernetes Service.

Platforma Azure udostępnia kilka wbudowanych zasad dla większości usług. Przejrzyj te wbudowane definicje zasad usługi Azure Policy i zastosuj je odpowiednio.

Monitorowanie zgodności

Zgodność musi być systematycznie monitorowana i utrzymywana. Wykonywane są regularne zaświadczania dotyczące zgodności. Poznanie, czy zasoby w chmurze są zgodne, ułatwi przygotowanie się do zaświadczania i inspekcji.

Skorzystaj z pulpitu nawigacyjnego zgodności z przepisami w Microsoft Defender dla Chmury. Stale monitorując pulpit nawigacyjny, możesz śledzić stan zgodności obciążenia.

Przykładowe monitorowanie zgodności

Bezpieczeństwo sieci

W topologii piasty i szprych posiadanie oddzielnych sieci wirtualnych dla każdej jednostki zapewnia podstawową segmentację w śladzie sieciowym. Każda sieć jest dalej podzielona na podsieci.

Klaster usługi AKS stanowi rdzeń usługi CDE. Nie powinien być dostępny z publicznych adresów IP, a łączność musi być zabezpieczona. Typowe przepływy w usłudze CDE i poza nie mogą być klasyfikowane jako:

  • Ruch przychodzący do klastra.
  • Ruch wychodzący z klastra.
  • Ruch w klastrze między zasobnikami.

Aby spełnić wymagania środowiska regulowanego, klaster jest wdrażany jako klaster prywatny. W tym trybie ruch do i z publicznego Internetu jest ograniczony. Nawet komunikacja z serwerem interfejsu API Kubernetes zarządzanym przez usługę AKS jest prywatna. Zabezpieczenia są dodatkowo ulepszone dzięki rygorystycznym mechanizmom kontroli sieci i regułom zapory adresów IP.

  • Sieciowe grupy zabezpieczeń ułatwiające zabezpieczanie komunikacji między zasobami w sieci.
  • Usługa Azure Firewall umożliwia filtrowanie dowolnego ruchu wychodzącego między zasobami w chmurze, Internetem i środowiskiem lokalnym.
  • aplikacja systemu Azure Gateway zintegrowana z platformą Azure Web Application Framework w celu filtrowania całego ruchu przychodzącego z Internetu, który aplikacja systemu Azure Gateway przechwytuje.
  • Platforma Kubernetes NetworkPolicy zezwala tylko na niektóre ścieżki między zasobnikami w klastrze.
  • Usługa Azure Private Link do łączenia się z innymi usługami platformy Azure jako usługi (PaaS), takimi jak Azure Key Vault i Azure Container Registry na potrzeby zadań operacyjnych.

Procesy monitorowania są na miejscu, aby upewnić się, że ruch przepływa zgodnie z oczekiwaniami i czy wszelkie anomalie są wykrywane i zgłaszane.

Aby uzyskać szczegółowe informacje na temat zabezpieczeń sieci, zobacz Segmentacja sieci.

Bezpieczeństwo danych

PCI-DSS 3.2.1 wymaga, aby wszystkie dane karty (CHD) nigdy nie są jasne, niezależnie od tego, czy są przesyłane, czy w magazynie.

Ponieważ ta architektura i implementacja koncentrują się na infrastrukturze, a nie obciążeniu, zarządzanie danymi nie jest pokazane. Oto kilka dobrze zaprojektowanych zaleceń.

Dane magazynowane

Dane muszą być szyfrowane za pomocą standardowych algorytmów szyfrowania branżowych.

  • Nie przechowuj danych w środowisku karty.
  • Szyfruj poza warstwą magazynu.
  • Zapisuj tylko zaszyfrowane dane na nośniku magazynu.
  • Nie przechowuj kluczy w warstwie magazynu.

Wszystkie dane w usłudze Azure Storage są szyfrowane i odszyfrowywane przy użyciu silnej kryptografii. Preferowane są klucze szyfrowania zarządzane przez siebie.

Jeśli musisz tymczasowo przechowywać dane, zastosuj te same zagadnienia do tych danych. Zdecydowanie zalecamy włączenie funkcji szyfrowania hosta usługi AKS. Szyfrowanie danych tymczasowych można wymusić za pomocą wbudowanych zasad platformy Azure.

Podczas wybierania technologii magazynowania zapoznaj się z funkcjami przechowywania. Upewnij się, że wszystkie dane są bezpiecznie usuwane po wygaśnięciu skonfigurowanego czasu.

Standard wymaga również, aby poufne dane uwierzytelniania (SAD) nie są przechowywane. Upewnij się, że dane nie są widoczne w dziennikach, nazwach plików, pamięci podręcznej i innych danych.

Dane przesyłane

Cała komunikacja z jednostkami, które współdziałają z usługą CDE, musi być za pośrednictwem zaszyfrowanych kanałów.

  • Tylko ruch HTTPS musi być dozwolony do przepływu do usługi CDE. W tej architekturze brama aplikacja systemu Azure odrzuca cały ruch przez port 80.
  • Najlepiej, nie szyfruj i odszyfruj danych poza usługą CDE. W takim przypadku należy wziąć pod uwagę, że jednostka jest częścią usługi CDE.
  • W ramach usługi CDE zapewnij bezpieczną komunikację między zasobnikami za pomocą biblioteki mTLS. W tym celu można zaimplementować siatkę usług.
  • Zezwalaj tylko na bezpieczne szyfry i protokół TLS 1.2 lub nowszy.

Tożsamość

Postępuj zgodnie z tymi zasadami zabezpieczeń podczas projektowania zasad dostępu:

  • Zacznij od zasad zero-trust. Wprowadź wyjątki zgodnie z potrzebami.
  • Przyznaj najmniejsze uprawnienia — wystarczy, aby wykonać zadanie.
  • Zminimalizuj stały dostęp.

Kontrola dostępu oparta na rolach (RBAC) platformy Kubernetes zarządza uprawnieniami do interfejsu API kubernetes. Usługa AKS obsługuje te role platformy Kubernetes. Usługa AKS jest w pełni zintegrowana z identyfikatorem Entra firmy Microsoft. Tożsamości firmy Microsoft można przypisywać do ról, a także korzystać z innych możliwości.

Dostęp zerowy

Kontrola dostępu na podstawie ról platformy Kubernetes, kontrola dostępu oparta na rolach platformy Azure i usługi platformy Azure domyślnie implementują wszystkie odmowy . Przesłoń to ustawienie z ostrożnością, zezwalając na dostęp tylko do tych jednostek, które jej potrzebują. Innym obszarem implementacji zero-trust jest wyłączenie dostępu SSH do węzłów klastra.

Najmniej uprawnień

Do oczekiwanych zadań można używać tożsamości zarządzanych dla zasobów i zasobników platformy Azure. Na przykład usługa aplikacja systemu Azure Gateway musi mieć uprawnienia do pobierania wpisów tajnych (certyfikatów TLS) z usługi Azure Key Vault. Nie może mieć uprawnień do modyfikowania wpisów tajnych.

Minimalizacja dostępu stałego

Zminimalizuj stały dostęp przy użyciu członkostwa w grupie Microsoft Entra just-in-time. Wzmacnianie kontroli za pomocą zasad dostępu warunkowego w usłudze Microsoft Entra ID. Ta opcja obsługuje wiele przypadków użycia, takich jak uwierzytelnianie wieloskładnikowe, ograniczenie uwierzytelniania do urządzeń zarządzanych przez dzierżawę firmy Microsoft Entra lub blokowanie nietypowych prób logowania.

Zarządzanie wpisami tajnymi

Przechowuj wpisy tajne, certyfikaty, klucze i hasła poza usługą CDE. Możesz użyć natywnych obiektów wpisów tajnych platformy Kubernetes lub zarządzanego magazynu kluczy, takiego jak usługa Azure Key Vault. Użycie magazynu zarządzanego pomoże w zadaniach zarządzania wpisami tajnymi, takich jak rotacja kluczy i odnawianie certyfikatów.

Upewnij się, że dostęp do magazynu kluczy ma kombinację mechanizmów kontroli dostępu i sieci. Po włączeniu tożsamości zarządzanych klaster musi uwierzytelnić się w usłudze Key Vault, aby uzyskać dostęp. Ponadto łączność z magazynem kluczy nie może być za pośrednictwem publicznego Internetu. Użyj sieci prywatnej, takiej jak Private Link.

Sprawność operacyjna

Postępuj zgodnie z podstawowymi wskazówkami zawartymi w zasadach doskonałości operacyjnej. Najlepsze rozwiązania dotyczące środowiska regulowanego zostały podsumowane w tych sekcjach.

Separacja ról

Wymuszanie wyraźnego podziału obowiązków dla regulowanych środowisk jest kluczowe. Mają definicje ról i obowiązków na podstawie potrzeb obciążenia i interakcji z usługą CDE. Na przykład może być potrzebna rola operatora infrastruktury lub inżyniera niezawodności lokacji (SRE) na potrzeby operacji związanych z klastrem i usługami zależnym. Rola jest odpowiedzialna za utrzymanie zabezpieczeń, izolacji, wdrażania i możliwości obserwacji. Sformalizuj te definicje i zdecyduj uprawnienia, których potrzebują te role. Na przykład środowiska SRE są wysoce uprzywilejowane w celu uzyskania dostępu do klastra, ale wymagają dostępu do odczytu do przestrzeni nazw obciążeń.

Izolacja obciążeń

PCI-DSS 3.2.1 wymaga izolacji obciążenia PCI od innych obciążeń pod względem operacji. W tej implementacji obciążenia w zakresie i poza zakresem są segmentowane w dwóch oddzielnych pulach węzłów użytkownika. Deweloperzy aplikacji dla deweloperów w zakresie i dla obciążeń poza zakresem mogą mieć różne zestawy uprawnień. Ponadto będą istnieć oddzielne bramy jakości. Na przykład kod w zakresie podlega zachowaniu zgodności i zaświadczania, podczas gdy kod poza zakresem nie jest. Konieczne jest również posiadanie oddzielnych potoków kompilacji i procesów zarządzania wydaniami.

Metadane operacyjne

Wymaganie 12 standardu PCI DSS 3.2.1 wymaga zachowania informacji o spisie obciążeń i dokumentacji dotyczącej dostępu do personelu. Zdecydowanie zalecamy używanie tagów platformy Azure, ponieważ można sortować informacje o środowisku za pomocą zasobów platformy Azure, grup zasobów i subskrypcji.

Zachowaj informacje o zatwierdzonych rozwiązaniach, które są częścią infrastruktury i obciążenia. Obejmuje to listę obrazów maszyn wirtualnych, baz danych i rozwiązań innych firm, które można przenieść do usługi CDE. Ten proces można nawet zautomatyzować, tworząc katalog usług. Zapewnia samoobsługowe wdrażanie przy użyciu tych zatwierdzonych rozwiązań w określonej konfiguracji, która jest zgodna z trwającymi operacjami platformy.

Wgląd w informacje

Aby spełnić wymaganie 10, możliwość obserwowania w usłudze CDE ma kluczowe znaczenie dla zgodności. Dzienniki aktywności zawierają informacje o operacjach związanych z zarządzaniem kontem i wpisami tajnymi, zarządzaniem ustawieniami diagnostycznymi, zarządzaniem serwerem i innymi operacjami dostępu do zasobów. Wszystkie dzienniki są rejestrowane przy użyciu daty, godziny, tożsamości i innych szczegółowych informacji. Zachowaj dzienniki przez maksymalnie rok, konfigurując zasady przechowywania i archiwizowania danych w dziennikach usługi Azure Monitor.

Upewnij się, że dzienniki są dostępne tylko przez role, które ich potrzebują. Usługi Log Analytics i Microsoft Sentinel obsługują różne mechanizmy kontroli dostępu oparte na rolach w celu zarządzania dostępem do dziennika inspekcji.

Odpowiedź i korygowanie

Usługi monitorowania platformy Azure, Azure Monitor i Microsoft Defender dla Chmury mogą generować powiadomienia lub alerty w przypadku wykrycia nietypowych działań. Te alerty obejmują informacje kontekstowe, takie jak ważność, stan i czas działania. W miarę generowania alertów masz strategię korygowania i przejrzyj postęp. Zalecamy scentralizowanie danych w rozwiązaniu do zarządzania informacjami i zdarzeniami zabezpieczeń (SIEM), ponieważ integrowanie danych może zapewnić bogaty kontekst alertu.

W widoku Alerty zabezpieczeń w Microsoft Defender dla Chmury masz dostęp do wszystkich alertów, które Microsoft Defender dla Chmury wykrywają zasoby. Aby rozwiązać ten problem, należy przeprowadzić klasyfikację. Skontaktuj się z zespołem ds. zabezpieczeń, aby dowiedzieć się, jak istotne alerty będą udostępniane właścicielom obciążeń.

Efektywność wydajności

Postępuj zgodnie z podstawowymi wskazówkami podanymi w zasadach wydajności. Najlepsze rozwiązania dotyczące środowiska regulowanego zostały podsumowane w tych sekcjach.

Skalowanie

Obserwując, jak środowisko dostosowuje się do zmieniających się wymagań, będzie wskazywać oczekiwane zachowanie środowiska uruchomieniowego w środowisku pod dużym obciążeniem. Skalowanie automatyczne zasobów w obciążeniu minimalizuje interakcję człowieka w usłudze CDE. Dodatkowa korzyść zabezpieczeń zmniejsza obszar ataków przez cały czas. Możesz zmaksymalizować tę korzyść, korzystając z zasobów, które obsługują podejście skalowane do zera. Na przykład usługa AKS obsługuje skalowanie w dół pul węzłów użytkownika do 0. Aby uzyskać więcej informacji, zobacz Skalowanie pul węzłów użytkownika do 0.

Partycjonowanie

Partycjonowanie jest kluczowym czynnikiem wydajności w obciążeniach regulowanych. Posiadanie odrębnych składników umożliwia chrupiącą definicję odpowiedzialności i pomaga w precyzyjnych kontrolkach, takich jak zasady sieciowe. Podobnie jak w przypadku każdej strategii segmentacji partycjonowanie izoluje składniki i kontroluje wpływ promienia wybuchu na nieoczekiwane awarie lub naruszenie systemu.

Architektura z niczym udostępnionym

Architektura z niczym udostępnionym została zaprojektowana w celu usunięcia rywalizacji między współlokowanym obciążeniem. Jest to również strategia usuwania pojedynczych punktów awarii. W środowisku regulowanym składniki muszą być odizolowane przez granice logiczne lub fizyczne. Jest to zgodne z architekturą z niczym udostępnionym, co skutkuje korzyściami ze skalowalności. Ponadto umożliwia kierowanie odpowiednich mechanizmów kontroli zabezpieczeń i ściślejsze możliwości inspekcji różnych składników.

Uproszczone obciążenia

Złożoność obciążeń jest trudna do udokumentowania i przeprowadzenia inspekcji. Staraj się dążyć do uproszczenia ze względu na korzyści z wydajności i łatwość inspekcji wymagań prawnych. Ponowne rozważenie wyborów, które mają więcej szerokości niż jest potrzebne, ponieważ zwiększa obszar powierzchni ataków i potencjał nieprawidłowego użycia lub błędnej konfiguracji.

Niezawodność

Niezawodność regulowanych środowisk musi być przewidywalna, aby można było je konsekwentnie wyjaśnić na potrzeby inspekcji. Postępuj zgodnie z podstawowymi wskazówkami podanymi w zasadach niezawodności. Najlepsze rozwiązania dotyczące środowiska regulowanego zostały podsumowane w tych sekcjach.

Cele odzyskiwania i odzyskiwanie po awarii

Ze względu na poufny charakter danych obsługiwanych w regulowanych obciążeniach, cele odzyskiwania i cele punktu odzyskiwania (RPO) mają kluczowe znaczenie dla zdefiniowania. Co to jest akceptowalna utrata CHD? Działania związane z odzyskiwaniem w ramach usługi CDE nadal podlegają standardowym wymaganiom. Spodziewaj się awarii i masz jasny plan odzyskiwania dla tych awarii, które są zgodne z rolami, obowiązkami i uzasadnionym dostępem do danych. Problemy z witryną na żywo nie są uzasadnieniem odejmowania się od żadnych przepisów. Jest to szczególnie ważne w pełnej sytuacji odzyskiwania po awarii. Uzyskaj wyraźną dokumentację odzyskiwania po awarii zgodną z wymaganiami i minimalizuje nieoczekiwany dostęp do usługi CDE lub CHD. Po odzyskaniu należy zawsze przejrzeć kroki procesu odzyskiwania, aby upewnić się, że nie wystąpił nieoczekiwany dostęp. Dokumentowanie uzasadnienia biznesowego dla tych wystąpień.

Odzyskiwanie

Dodanie strategii odporności i odzyskiwania do architektury może uniemożliwić dostęp ad hoc do usługi CDE. System powinien mieć możliwość samodzielnego odzyskania w zdefiniowanym celu punktu odzyskiwania bez konieczności bezpośredniej interwencji człowieka. W ten sposób można wyeliminować niepotrzebne narażenie CHD, nawet dla osób uprawnionych do uzyskania dostępu awaryjnego. Proces odzyskiwania musi być możliwy do inspekcji.

Przejrzyj zagrożenia bezpieczeństwa, ponieważ mogą być źródłem przestojów obciążeń i utraty danych. Inwestycje w zabezpieczenia mają również wpływ na niezawodność obciążeń.

Procesy operacyjne

Niezawodność rozszerza się na wszystkie procesy operacyjne i sąsiadujące z usługą CDE. Dobrze zdefiniowane, zautomatyzowane i przetestowane procesy dotyczące problemów, takich jak tworzenie obrazów i przechodzenie do rozwiązania do zarządzania skrzynkami przesiadkowymi, w dobrze zaprojektowane rozwiązanie.

Optymalizacja kosztów

Postępuj zgodnie z podstawowymi wskazówkami podanymi w zasadach optymalizacji kosztów.

Ze względu na wymagania dotyczące zgodności i ścisłe mechanizmy kontroli zabezpieczeń, wyraźny kompromis jest kosztem. Zalecamy ustanowienie początkowych szacunków przy użyciu kalkulatora cen.

Poniżej przedstawiono ogólną reprezentację wpływu kosztów głównych zasobów używanych przez tę architekturę.

Diagram zarządzania kosztami w architekturze.

Głównymi sterownikami są zestawy skalowania maszyn wirtualnych, które składają się na pule węzłów i usługę Azure Firewall. Innym współautorem jest usługa Log Analytics. Istnieją również koszty przyrostowe związane z Microsoft Defender dla Chmury, w zależności od wybranego planu.

Należy jasno zrozumieć, co stanowi cenę usługi. Platforma Azure śledzi użycie taryfowe. Poniżej przedstawiono przechodzenie do szczegółów usługi Azure Firewall dla tej architektury.

Diagram przedstawiający zarządzanie kosztami w przykładzie usługi Azure Firewall.

Koszt związany z niektórymi zasobami, takimi jak usługa Azure Firewall, może być rozłożony na wiele jednostek biznesowych lub aplikacji. Innym sposobem optymalizacji kosztów może być hostowanie klastra wielodostępnego w organizacji, maksymalizowanie gęstości przy użyciu różnorodności obciążeń. Nie zalecamy jednak tego podejścia w przypadku obciążeń regulowanych. Zawsze ustalaj priorytety zgodności i segmentacji w przypadku korzyści z kosztów.

Aby zachować ograniczenia budżetowe, niektóre sposoby kontrolowania kosztów to dostosowanie infrastruktury bramy aplikacja systemu Azure, ustawienie liczby wystąpień na potrzeby skalowania automatycznego i zmniejszenie danych wyjściowych dziennika, o ile nadal spełniają dziennik inspekcji wymagany przez PCI-DSS 3.2.1. Zawsze oceniaj te opcje względem kompromisów w innych aspektach projektu, które pozwalają spełnić umowę SLA. Czy na przykład nadal możesz odpowiednio skalować w celu osiągnięcia skoków ruchu?

Podczas tworzenia grup zasobów platformy Azure zastosuj tagi, aby można je było śledzić pod kątem kosztów. Użyj narzędzi do zarządzania kosztami, takich jak Azure Advisor i Microsoft Cost Management , aby śledzić i analizować koszty.

Rozważ włączenie analizy kosztów usługi AKS na potrzeby szczegółowej alokacji kosztów infrastruktury klastra według określonych konstrukcji platformy Kubernetes.