Maester - Security Test Automation
Mit Maester stellst du sicher, dass deine Microsoft 365 Tenant Konfiguration konform mit deinen Sicherheitsrichtlinien ist. Dafür definierst du deine Sicherheitsrichtlinien als Code (Security as Code - SaC) und nutzt Tests um deine Konfiguration automatisiert zu prüfen.
Einstieg
Maester ist ein PowerShell-basiertes Security Test Automation Framework, welches die Automatisierung von Sicherheitstest gegen deinen M365 Tenant ermöglicht. Dazu dient Pester, ein Test- und Mocking-Framework für PowerShell, als Grundlage um Tests zu erstellen, welche automatisiert ablaufen. Pester gibt eine Benennung der PowerShell-Scripte (**.Tests.ps1*) und eine einfache Menge von Funktionen (Describe, Context, It, Should, Mock) vor. Einen guten Einstieg bekommst du im Pester Quick Start. 👌
Zurück zu Maester! Maester bringt out-of-the-box einer Menge Tests auf Basis etablierter Benchmarks bzw. Security Configuration Baseline (Entra ID SCA, CISA, CIS) mit. Eigener Tenant bedeutet ggf. auch eigene Besonderheiten. Daher ist es ratsam eigene Tests passend zu seiner Tenant-Konfiguration zu schreiben. Auf der Maester-Seite ist das ausführlich dokumentiert. Außerdem findest du dort auch Beispiele für gängige Automatisierungsszenarien über GitHub oder Azure DevOps, sowie Benachrichtigungswege (Alerts) über Microsoft Teams oder der guten, alten E-Mail. ☺️
Eindruck
Anhand der Dokumentation hatte ich den ersten Lauf von Maester in wenigen Minuten durchgeführt. Der generierte Bericht ist ausführlich und hilfreich. Die Testergebnisse werden auch in JSON abgelegt und somit kann eine Weiterverarbeitung in anderen Systemen erfolgen. Das Erstellen und Integrieren eigener Tests sind für mich alten Entwickler schon fast ein Kinderspiel. Tenant-Admins sind bestimmt ebenfalls fit in PowerShell!? Daher sehe ich für Maester eher geringe Einstiegshürden.
Insgesamt ein toller Ansatz, um Transparenz in seine Tenant-Konfiguration und Änderungen zu bekommen. Aus meiner Sicht ein must-have Tool. 👍