Auswerten der Auswirkung einer neuen Azure Policy-Definition
Azure Policy ist ein leistungsstarkes Tool zur Verwaltung Ihrer Azure-Ressourcen zum Erfüllen von geschäftsspezifischen Standards und Complianceanforderungen. Wenn Personen, Prozesse oder Pipelines Ressourcen erstellen oder aktualisieren, überprüft Azure Policy die Anforderung. Wenn die Auswirkung der Richtliniendefinition modify, append oder deployIfNotExists lautet, ändert Azure Policy die Anforderung oder ergänzt sie. Wenn die Auswirkung der Richtliniendefinition audit oder auditIfNotExists lautet, veranlasst Azure Policy die Erstellung eines Aktivitätsprotokolleintrags für neue und aktualisierte Ressourcen. Und wenn die Auswirkung der Richtliniendefinition deny oder denyAction lautet, beendet Azure Policy die Erstellung oder Änderung der Anforderung.
Wenn Sie wissen, dass die Richtlinie ordnungsgemäß definiert ist, entsprechen diese Ergebnisse genau den Erwartungen. Es ist jedoch wichtig zu überprüfen, dass eine neue Richtlinie ordnungsgemäß funktioniert, bevor ihr gestattet wird, die Arbeit zu ändern oder zu blockieren. Die Überprüfung muss sicherstellen, dass nur die vorgesehenen Ressourcen als nicht konform eingestuft und keine konformen Ressourcen fälschlicherweise in die Ergebnisse einbezogen werden (bekannt als False Positive).
Der empfohlene Ansatz für die Überprüfung einer neuen Richtliniendefinition besteht darin, die folgenden Schritte auszuführen:
- Definieren Sie Ihre Richtlinie präzise.
- Testen Sie die Wirksamkeit Ihrer Richtlinie.
- Überprüfen Sie neue oder aktualisierte Ressourcenanforderungen.
- Stellen Sie Ihre Richtlinie für Ressourcen bereit.
- Führen Sie eine kontinuierliche Überwachung durch.
Präzises Definieren Ihrer Richtlinie
Es ist wichtig zu verstehen, wie die Geschäftsrichtlinie als Richtliniendefinition und die Beziehung von Azure-Ressourcen zu anderen Azure-Diensten implementiert wird. Dieser Schritt wird durch Identifizieren der Anforderungen und Bestimmen der Ressourceneigenschaften durchgeführt. Aber es ist auch wichtig, über die knappe Definition Ihrer Geschäftsrichtlinie hinauszuschauen. Steht in Ihrer Richtlinie z. B. Alle virtuellen Computer müssen...? Was ist mit anderen Azure-Diensten, die virtuelle Computer nutzen, z. B. HDInsight oder Azure Kubernetes Service (AKS)? Bei der Definition einer Richtlinie müssen wir berücksichtigen, wie sich diese Richtlinie auf Ressourcen auswirkt, die von anderen Diensten genutzt werden.
Aus diesem Grund sollten Ihre Richtliniendefinitionen so präzise wie möglich definiert sein und sich auf die Ressourcen und Eigenschaften konzentrieren, die Sie für die Compliance auswerten müssen.
Testen der Wirksamkeit Ihrer Richtlinie
Bevor Sie mit Ihrer neuen Richtliniendefinition neue oder aktualisierte Ressourcen verwalten, ist es am besten zu prüfen, wie sie eine begrenzte Teilmenge vorhandener Ressourcen, z. B. eine Testressourcengruppe, auswertet. Die Azure Policy VS Code-Erweiterung ermöglicht das isolierte Testen von Definitionen gegen bestehende Azure-Ressourcen unter Verwendung des On-Demand-Evaluierungsscans. Sie können die Definition auch in einer Dev-Umgebung zuweisen, indem Sie den Erzwingungsmodus Deaktiviert (doNotEnforce) für Ihre Richtlinienzuweisung verwenden, um zu verhindern, dass effect ausgelöst oder Aktivitätsprotokolleinträge erstellt werden.
Dieser Schritt bietet Ihnen die Möglichkeit, die Complianceergebnisse der neuen Richtlinie für vorhandene Ressourcen auszuwerten, ohne den Workflow zu beeinträchtigen. Vergewissern Sie sich, dass keine konformen Ressourcen als nicht konform angezeigt werden (False Positive) und dass alle Ressourcen, von denen Sie erwarten, dass sie nicht konform sind, korrekt markiert sind. Nachdem die anfängliche Untergruppe von Ressourcen wie erwartet validiert wurde, erweitern Sie die Bewertung langsam auf weitere bestehende Ressourcen und weitere Bereiche.
Die auf diese Weise durchgeführte Auswertung der vorhandenen Ressourcen bietet auch die Möglichkeit, nicht konforme Ressourcen vor der vollständigen Implementierung der neuen Richtlinie zu bereinigen. Diese Bereinigung kann manuell oder über einen Wartungstask erfolgen, wenn die Auswirkung der Richtliniendefinition deployIfNotExists
oder modify
lautet.
Richtliniendefinitionen mit deployIfNotExists
sollten die Azure Resource Manager-Vorlage „What If“ nutzen, um die Änderungen zu validieren und zu testen, die bei der Bereitstellung der ARM-Vorlage auftreten.
Überprüfen von neuen oder aktualisierten Ressourcen
Nachdem Sie überprüft haben, dass Ihre neue Richtliniendefinition ordnungsgemäß über vorhandene Ressourcen berichtet, ist es an der Zeit, die Auswirkungen der Richtlinie zu untersuchen, wenn Ressourcen erstellt oder aktualisiert werden. Wenn die Richtliniendefinition die Parametrisierung von Effekten unterstützt, verwenden Sie audit oder auditIfNotExist. Mit dieser Konfiguration können Sie die Erstellung und Aktualisierung von Ressourcen überwachen, um festzustellen, ob die neue Richtliniendefinition einen Eintrag im Azure-Aktivitätsprotokoll für eine nicht konforme Ressource auslöst, ohne die vorhandene Arbeit oder Anforderungen zu beeinträchtigen.
Es wird empfohlen, neue Ressourcen zu aktualisieren und zu erstellen, die Ihrer Richtliniendefinition entsprechen, um sicherzustellen, dass die Auswirkung audit
oder auditIfNotExists
ordnungs- und erwartungsgemäß ausgelöst wird. Achten Sie auf Ressourcenanforderungen, die nicht von der neuen Richtliniendefinition betroffen sein sollten, die die Auswirkung audit
oder auditIfNotExists
auslösen. Diese betroffenen Ressourcen sind ein weiteres Beispiel für False Positive und müssen vor der vollständigen Implementierung in der Richtliniendefinition festgelegt werden.
Für den Fall, dass die Richtliniendefinition in dieser Phase der Tests geändert wird, wird empfohlen, den Auswertungsprozess mit der Überwachung vorhandener Ressourcen erneut zu beginnen. Eine Änderung der Richtliniendefinition für ein False Positive bei neuen oder aktualisierten Ressourcen wird wahrscheinlich auch Auswirkungen auf vorhandene Ressourcen haben.
Bereitstellen Ihrer Richtlinie für Ressourcen
Nachdem Sie die Überprüfung Ihrer neuen Richtliniendefinition sowohl mit vorhandenen Ressourcen als auch mit neuen oder aktualisierten Ressourcenanforderungen abgeschlossen haben, beginnen Sie mit der Implementierung der Richtlinie. Es wird empfohlen, die Richtlinienzuweisung für die neue Richtliniendefinition zunächst für eine Teilmenge aller Ressourcen zu erstellen, z. B. für eine Ressourcengruppe. Mithilfe der resourceSelectors-Eigenschaft innerhalb der Richtlinienzuordnung können Sie nach Ressourcentyp oder Speicherort weiter filtern. Erweitern Sie nach der Überprüfung der Erstbereitstellung den Umfang der Richtlinie auf eine breitere Ebene als Ressourcengruppe. Erweitern Sie nach der Überprüfung der Erstbereitstellung den Effekt der Richtlinie, indem Sie die resourceSelector
-Filter an weitere Speicherorte oder Ressourcentypen anpassen. Sie können auch die Zuweisung entfernen und durch eine neue mit größerem Geltungsbereich ersetzen, z. B. Abonnements und Verwaltungsgruppen. Fahren Sie mit dieser schrittweisen Einführung fort, bis der gesamte Umfang der Ressourcen, die von Ihrer neuen Richtliniendefinition abgedeckt werden sollen, erfasst ist.
Wenn während des Rollouts Ressourcen gefunden werden, die von Ihrer neuen Richtliniendefinition ausgenommen sein sollten, gehen Sie wie folgt vor:
- Aktualisieren Sie die Definition der Richtlinie, um sie expliziter zu formulieren, damit unbeabsichtigte Auswirkungen verringert werden.
- Ändern Sie den Gültigkeitsbereich der Richtlinienzuweisung (durch Entfernen der Zuweisung und Erstellen einer neuen).
- Fügen Sie die Ressourcengruppe zur Ausschlussliste für die Richtlinienzuweisung hinzu.
Alle Änderungen am Bereich (Ebene oder Ausschlüsse) sollten vollständig überprüft und mit Ihren Sicherheits- und Complianceorganisationen kommuniziert werden, um sicherzustellen, dass es keine Lücken bei der Abdeckung gibt.
Überwachen Ihrer Richtlinie und Compliance
Die Implementierung und Zuweisung Ihrer Richtliniendefinition ist nicht der letzte Schritt. Überwachen Sie kontinuierlich die Compliance der Ressourcen gemäß Ihrer neuen Richtliniendefinition, und richten Sie geeignete Azure Monitor-Warnungen und -Benachrichtigungen ein, wenn nicht konforme Geräte identifiziert werden. Es wird außerdem empfohlen, die Richtliniendefinition und die damit verbundenen Zuweisungen regelmäßig auszuwerten, um zu überprüfen, ob die Richtliniendefinition den Anforderungen der Geschäftsrichtlinie und der Compliance entspricht. Richtlinien sollten entfernt werden, wenn sie nicht mehr benötigt werden. Richtlinien müssen auch von Zeit zu Zeit aktualisiert werden, wenn sich die zugrunde liegenden Azure-Ressourcen weiterentwickeln und neue Eigenschaften und Funktionen hinzufügt werden.
Nächste Schritte
- Erfahren Sie mehr über die Struktur von Richtliniendefinitionen.
- Erfahren Sie mehr über die Struktur von Richtlinienzuweisungen.
- Informieren Sie sich über das programmgesteuerte Erstellen von Richtlinien.
- Informieren Sie sich über das Abrufen von Konformitätsdaten.
- Erfahren Sie, wie Sie nicht konforme Ressourcen korrigieren können.
- Weitere Informationen zu Verwaltungsgruppen finden Sie unter Organisieren Ihrer Ressourcen mit Azure-Verwaltungsgruppen.