Udostępnij za pośrednictwem


Ocena wpływu nowej definicji usługi Azure Policy

Usługa Azure Policy to zaawansowane narzędzie do zarządzania zasobami platformy Azure w celu spełnienia wymagań dotyczących zgodności ze standardami biznesowymi. Gdy ludzie, procesy lub potoki tworzą lub aktualizują zasoby, usługa Azure Policy sprawdza żądanie. Gdy efekt definicji zasad jest modyfikowany, dołączany lub wdrażanyIfNotExists, zasady zmieniają żądanie lub dodaje do niego. Gdy efekt definicji zasad jest inspekcji lub inspekcjiIfNotExists, zasady powodują utworzenie wpisu dziennika aktywności dla nowych i zaktualizowanych zasobów. A gdy efekt definicji zasad jest blokowany lub odrzucany, zasady zatrzymują tworzenie lub modyfikowanie żądania.

Te wyniki są dokładnie zgodne z oczekiwaniami, gdy wiadomo, że zasady zostały zdefiniowane poprawnie. Należy jednak sprawdzić, czy nowe zasady działają zgodnie z oczekiwaniami, zanim umożliwią zmianę lub zablokowanie pracy. Walidacja musi zapewnić, że tylko zamierzone zasoby są określane jako niezgodne, a w wynikach nie są niepoprawnie uwzględniane żadne zgodne zasoby (znane jako fałszywie dodatnie).

Zalecane podejście do walidacji nowej definicji zasad polega na wykonaniu następujących kroków:

  • Ściśle zdefiniuj zasady.
  • Przetestuj skuteczność zasad.
  • Przeprowadź inspekcję nowych lub zaktualizowanych żądań zasobów.
  • Wdróż zasady w zasobach.
  • Ciągłe monitorowanie.

Ściśle zdefiniuj zasady

Ważne jest, aby zrozumieć, jak zasady biznesowe są implementowane jako definicja zasad i relacje zasobów platformy Azure z innymi usługami platformy Azure. Ten krok można wykonać, identyfikując wymagania i określając właściwości zasobu. Ale ważne jest również, aby zobaczyć poza wąską definicją zasad biznesowych. Czy na przykład zasady mają stan Wszystkie maszyny wirtualne...? Co z innymi usługami platformy Azure korzystającymi z maszyn wirtualnych, takich jak HDInsight lub Azure Kubernetes Service (AKS)? Podczas definiowania zasad należy wziąć pod uwagę, w jaki sposób te zasady wpływają na zasoby używane przez inne usługi.

Z tego powodu definicje zasad powinny być tak ściśle zdefiniowane i skoncentrowane na zasobach i właściwościach, które należy ocenić pod kątem zgodności, jak to możliwe.

Testowanie skuteczności zasad

Przed rozpoczęciem zarządzania nowymi lub zaktualizowanymi zasobami przy użyciu nowej definicji zasad najlepiej sprawdzić, jak ocenia ona ograniczony podzestaw istniejących zasobów, na przykład testową grupę zasobów. Rozszerzenie programu VS Code usługi Azure Policy umożliwia izolowane testowanie definicji względem istniejących zasobów platformy Azure przy użyciu skanowania oceny na żądanie. Możesz również przypisać definicję w środowisku deweloperskim przy użyciu trybu wymuszania Wyłączone (doNotEnforce) w przypisaniu zasad, aby zapobiec wyzwalaniu efektu lub tworzeniu wpisów dziennika aktywności.

Ten krok umożliwia ocenę wyników zgodności nowych zasad dotyczących istniejących zasobów bez wpływu na przepływ pracy. Sprawdź, czy niezgodne zasoby są wyświetlane jako niezgodne (fałszywie dodatnie) i czy wszystkie zasoby, których oczekujesz, że niezgodne są prawidłowo oznaczone. Po początkowym podzestawie zasobów sprawdza poprawność zgodnie z oczekiwaniami, powoli rozszerzaj ocenę do większej liczby istniejących zasobów i większej liczby zakresów.

Ocena istniejących zasobów w ten sposób umożliwia również korygowanie niezgodnych zasobów przed pełną implementacją nowych zasad. To czyszczenie można wykonać ręcznie lub za pomocą zadania korygowania, jeśli efekt definicji zasad to deployIfNotExists lub modify.

Definicje zasad z elementem deployIfNotExists powinny używać szablonu usługi Azure Resource Manager, co zrobić, aby zweryfikować i przetestować zmiany, które mają miejsce podczas wdrażania szablonu usługi ARM.

Inspekcja nowych lub zaktualizowanych zasobów

Po zweryfikowaniu, czy nowa definicja zasad prawidłowo raportuje istniejące zasoby, nadszedł czas, aby przyjrzeć się efektowi zasad podczas tworzenia lub aktualizowania zasobów. Jeśli definicja zasad obsługuje parametryzację efektów, użyj inspekcji lub auditIfNotExist. Ta konfiguracja umożliwia monitorowanie tworzenia i aktualizowania zasobów w celu sprawdzenia, czy nowa definicja zasad wyzwala wpis w dzienniku aktywności platformy Azure dla zasobu niezgodnego bez wpływu na istniejącą pracę lub żądania.

Zaleca się zaktualizowanie i utworzenie nowych zasobów pasujących do definicji zasad w celu sprawdzenia, czy audit efekt lub auditIfNotExists jest poprawnie wyzwalany, gdy jest to oczekiwane. Poszukaj żądań zasobów, które nie powinny mieć wpływu na nową definicję zasad, która wyzwala audit efekt lub auditIfNotExists . Te zasoby, których dotyczy problem, są kolejnym przykładem wyników fałszywie dodatnich i muszą zostać naprawione w definicji zasad przed pełną implementacją.

W przypadku zmiany definicji zasad na tym etapie testowania zaleca się rozpoczęcie procesu weryfikacji przy użyciu inspekcji istniejących zasobów. Zmiana definicji zasad dla fałszywie dodatniego wyniku dla nowych lub zaktualizowanych zasobów może również mieć wpływ na istniejące zasoby.

Wdrażanie zasad w zasobach

Po zakończeniu walidacji nowej definicji zasad zarówno przy użyciu istniejących zasobów, jak i nowych lub zaktualizowanych żądań zasobów, rozpoczniesz proces implementowania zasad. Zaleca się utworzenie przypisania zasad dla nowej definicji zasad do podzestawu wszystkich zasobów, takich jak grupa zasobów. Możesz dalej filtrować według typu zasobu lub lokalizacji przy użyciu właściwości resourceSelectors w ramach przypisania zasad. Po zweryfikowaniu początkowego wdrożenia rozszerz zakres zasad tak, aby był szerszy jako grupa zasobów. Po zweryfikowaniu początkowego wdrożenia rozwiń efekt zasad, dostosowując resourceSelector filtry do większej liczby lokalizacji lub typów zasobów. Możesz też usunąć przypisanie i zastąpić je nowym w szerszych zakresach, takich jak subskrypcje i grupy zarządzania. Kontynuuj to stopniowe wdrażanie, dopóki nie zostanie przypisany do pełnego zakresu zasobów przeznaczonych do objęcia nową definicją zasad.

Podczas wdrażania, jeśli znajdują się zasoby, które powinny być wykluczone z nowej definicji zasad, należy rozwiązać je w jeden z następujących sposobów:

  • Zaktualizuj definicję zasad, aby było bardziej jawne, aby zmniejszyć niezamierzone skutki.
  • Zmień zakres przypisania zasad (usuwając i tworząc nowe przypisanie).
  • Dodaj grupę zasobów do listy wykluczeń dla przypisania zasad.

Wszelkie zmiany zakresu (poziom lub wykluczenia) powinny zostać w pełni zweryfikowane i przekazane organizacjom ds. zabezpieczeń i zgodności, aby upewnić się, że nie ma żadnych luk w zakresie.

Monitorowanie zasad i zgodności

Implementowanie i przypisywanie definicji zasad nie jest ostatnim krokiem. Stale monitoruj poziom zgodności zasobów do nowej definicji zasad i skonfiguruj odpowiednie alerty i powiadomienia usługi Azure Monitor w przypadku zidentyfikowania niezgodnych urządzeń. Zaleceniem jest ocena definicji zasad i powiązanych przypisań zgodnie z harmonogramem w celu sprawdzenia, czy definicja zasad spełnia wymagania dotyczące zasad biznesowych i zgodności. Jeśli zasady nie będą już potrzebne, należy je usunąć. Zasady muszą być również aktualizowane od czasu do czasu, gdy bazowe zasoby platformy Azure ewoluują i dodają nowe właściwości i możliwości.

Następne kroki