View a markdown version of this page

Vorlagen mit Guard validieren - AWS CloudFormation

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Vorlagen mit Guard validieren

AWS CloudFormation Guard (cfn-guard) ist ein Policy-as-Code-Tool. Sie schreiben Regeln, die erforderliche oder verbotene Konfigurationen beschreiben, und überprüfen dann JSON- oder YAML-Daten anhand dieser Regeln. Sie können beispielsweise vorschreiben, dass jeder Amazon S3-Bucket in einer Vorlage eine Verschlüsselung verwendet.

Die Einschränkungen der lokalen Validierung und die vor der Bereitstellung zu ergreifenden Schritte finden Sie unterVerstehen Sie den Umfang der Validierung.

Installieren Sie Guard

AnmacOS, installiere Guard mit Homebrew:

brew install cloudformation-guard

Informationen zu Linux, Windows, anderen macOS Installationsmethoden und der Versionsüberprüfung finden Sie unter Einrichten. AWS CloudFormation Guard

Schreiben Sie eine Regel

Speichern Sie Regeln in einer Datei mit der .guard Erweiterung. Im folgenden Beispiel muss jeder Amazon S3-Bucket in einer Vorlage die Bucket-Verschlüsselung angeben:

let s3_buckets = Resources.*[ Type == 'AWS::S3::Bucket' ] rule S3_BUCKET_ENCRYPTED when %s3_buckets !empty { %s3_buckets { Properties.BucketEncryption exists } }

Die Regelsyntax und weitere Beispiele finden Sie unter AWS CloudFormation Guard Regeln schreiben.

Validieren Sie eine Vorlage

Übergeben Sie die Regeldatei --rules und die Vorlage an--data:

cfn-guard validate --rules rules.guard --data template.yaml

Der Befehl gibt den Exit-Status zurück0, wenn die Vorlage erfolgreich ist. Wenn eine Regel fehlschlägt, identifiziert die Ausgabe die fehlgeschlagene Regel. Sie können auch Verzeichnisse an mehrere Dateien --data übergeben --rules und diese überprüfen.

Bevor Sie eine Regel in einem automatisierten Workflow verwenden, testen Sie sie mit der integrierten Unterstützung für Komponententests. Eine Anleitung finden Sie unter AWS CloudFormation Guard Regeln testen.

Fügen Sie Guard zu Ihrem Workflow hinzu

Du kannst Guard lokal, in einem automatisierten Build oder vor einem Git-Commit ausführen. Der CloudFormation Sprachserver kann auch Guard-Regelpakete ausführen, während Sie eine Vorlage bearbeiten. Informationen zur Einrichtung finden Sie unterCloudFormation Sprachserver.

Verwenden Sie Guard Hooks, um Regeln während CloudFormation und bei Vorgängen der Cloud Control API durchzusetzen. Weitere Informationen finden Sie unter Guard Hooks.

Weitere Informationen

Die vollständige Sprach- und Befehlsreferenz finden Sie im AWS CloudFormation Guard Benutzerhandbuch. Quellcode und Versionsinformationen sind im AWS CloudFormation Guard Repository unter verfügbar GitHub.