Jak ZEUS czyta Azure (Service Principal read-only, ARM, Resource Graph, Defender, Entra Graph)
To kluczowa lekcja dla każdego, kto wdraża ZEUS u klienta. Pokazuje, jak konektor łączy się z Azure — wyłącznie do odczytu — i jakie API odpytuje. Model jest celowo minimalistyczny: tożsamość bez uprawnień do zapisu.
Tożsamość: Service Principal read-only
ZEUS rejestruje w tenancie klienta aplikację (App Registration) i powiązany Service Principal. Nadajemy mu dwie role RBAC na poziomie management group lub subskrypcji:
- Reader — odczyt całej hierarchii zasobów,
- Security Reader — odczyt danych Defender for Cloud.
# Service principal z rolą Reader na subskrypcji
az ad sp create-for-rbac --name "zeus-connector" \
--role "Reader" --scopes "/subscriptions/<sub-id>"
# Dodatkowo Security Reader (dane Defendera)
az role assignment create --assignee "<app-id>" \
--role "Security Reader" --scope "/subscriptions/<sub-id>"
Wskazówka: żadnej z tych ról nie da się użyć do modyfikacji zasobów. ZEUS fizycznie nie ma uprawnień, by cokolwiek zmienić — to gwarancja dla działu bezpieczeństwa klienta. Remediacja, jeśli włączona, wymaga osobnego, jawnie zatwierdzonego upoważnienia.
Cztery źródła danych
1. Azure Resource Manager (ARM)
Warstwa kontrolna Azure. ZEUS odpytuje ARM o szczegóły zasobów — konfigurację
VM, sieci, baz, kont storage — przez REST API management.azure.com.
2. Azure Resource Graph
Szybkie, masowe zapytania KQL po całej hierarchii. Idealne do inwentaryzacji dziesiątek tysięcy zasobów jednym zapytaniem:
az graph query -q "
Resources
| where type =~ 'microsoft.compute/virtualmachines'
| project name, location, resourceGroup, subscriptionId
"
3. Microsoft Defender for Cloud
Przez API bezpieczeństwa ZEUS zaciąga rekomendacje, assessments, Secure Score i alerty — bez dublowania skanów, które Microsoft już wykonał (patrz lekcja 06).
4. Microsoft Graph (Entra ID)
Odczyt konfiguracji tożsamości: użytkownicy, grupy, role uprzywilejowane, stan
MFA, polityki Conditional Access. Wymaga uprawnień aplikacyjnych Graph, m.in.
Directory.Read.All, Policy.Read.All, Reports.Read.All (to ostatnie jest
potrzebne, by poprawnie odczytać stan MFA użytkowników).
Co ZEUS robi z tymi danymi
| Źródło | Co odczytuje | Po co |
|---|---|---|
| ARM | konfiguracja zasobów | wykrywanie misconfigów |
| Resource Graph | inwentarz całej hierarchii | mapa środowiska |
| Defender | rekomendacje, alerty | posture + SecOps |
| Graph (Entra) | tożsamość, MFA, role | identity posture |
Wszystkie cztery strumienie spływają do jednego modelu danych ZEUS-a, gdzie łączą się z analogicznymi danymi z AWS, GCP i on-premise. Efekt: jeden widok postawy bezpieczeństwa całego środowiska klienta, z możliwością wykazania zgodności z NIS2, DORA i ISO 27001.
Podsumowanie ścieżki
Przeszliśmy od hierarchii tenanta i RBAC, przez sieci, compute, storage i IaC, po bezpieczeństwo i konektor ZEUS. Masz teraz komplet, by rozumieć, jak ZEUS "widzi" środowisko Azure klienta — i poprowadzić demo bądź wdrożenie.