Implementowanie zabezpieczeń potoku
Podstawowym elementem jest ochrona kodu chroniącego poświadczenia i wpisy tajne. Wyłudzanie informacji staje się coraz bardziej wyrafinowane. Poniższa lista zawiera kilka praktyk operacyjnych, które zespół powinien zastosować w celu ochrony siebie:
- Uwierzytelnianie i autoryzacja. Użyj uwierzytelniania wieloskładnikowego (MFA), nawet w domenach wewnętrznych i narzędzi administracyjnych just in time, takich jak Azure PowerShell Just Enough Administration (JEA), aby chronić przed eskalacjami uprawnień. Użycie różnych haseł dla różnych kont użytkowników ograniczy szkody w przypadku kradzieży zestawu poświadczeń dostępu.
- Potok wydania ciągłej integracji/ciągłego wdrażania. Jeśli potok wydania i cykl wydania są uszkodzone, użyj tego potoku, aby ponownie skompilować infrastrukturę. Zarządzanie infrastrukturą jako kodem (IaC) za pomocą usługi Azure Resource Manager lub używanie platformy Azure jako usługi (PaaS) lub podobnej usługi. Potok automatycznie utworzy nowe wystąpienia, a następnie je zniszczy. Ogranicza to miejsca, w których osoby atakujące mogą ukrywać złośliwy kod wewnątrz infrastruktury. Usługa Azure DevOps szyfruje wpisy tajne w potoku. Najlepszym rozwiązaniem jest obracanie haseł tak samo jak w przypadku innych poświadczeń.
- Zarządzanie uprawnieniami. Możesz zarządzać uprawnieniami w celu zabezpieczenia potoku za pomocą kontroli dostępu opartej na rolach (RBAC), tak jak w przypadku kodu źródłowego. Zapewnia kontrolę nad edytowaniem definicji kompilacji i wydań używanych do produkcji.
- Skanowanie dynamiczne. Jest to proces testowania uruchomionej aplikacji ze znanymi wzorcami ataków. Możesz zaimplementować testy penetracyjne w ramach wersji. Możesz również być na bieżąco z projektami zabezpieczeń, takimi jak Open Web Application Security Project (OWASP), a następnie wdrożyć te projekty w procesach.
- Monitorowanie produkcyjne. Jest to kluczowa praktyka metodyki DevOps. Wyspecjalizowane usługi do wykrywania anomalii związanych z nieautoryzowaniem są nazywane zarządzaniem informacjami i zdarzeniami zabezpieczeń. Microsoft Defender dla Chmury koncentruje się na zdarzeniach zabezpieczeń związanych z chmurą platformy Azure.
Uwaga
We wszystkich przypadkach użyj szablonów usługi Azure Resource Manager lub innych konfiguracji opartych na kodzie. Zaimplementuj najlepsze rozwiązania IaC, takie jak wprowadzanie zmian w szablonach w celu śledzenia i powtarzania zmian. Ponadto można użyć technologii aprowizacji i konfiguracji, takich jak Desired State Configuration (DSC), Azure Automation i inne narzędzia i produkty innych firm, które mogą bezproblemowo integrować się z platformą Azure.