Zum Hauptinhalt springen

infraguard policy

Compliance-Richtlinien verwalten.

Unterbefehle

list

Alle verfügbaren Richtlinien auflisten:

infraguard policy list

get

Details einer bestimmten Richtlinie abrufen:

infraguard policy get rule:aliyun:ecs-instance-no-public-ip
infraguard policy get pack:aliyun:mlps-level-3-pre-check-compliance-pack

update

Richtlinienbibliothek aktualisieren:

infraguard policy update

new

Eine neue benutzerdefinierte Regel gerüsten (Rego-Skelett + Test-Fixtures):

# Eine Regel für ROS und Terraform generieren
infraguard policy new ecs-instance-must-have-owner-tag \
--iac both --severity medium \
--resource-type ALIYUN::ECS::Instance \
--tf-resource-type alicloud_instance

# Ein Compliance-Pack-Skelett generieren
infraguard policy new --pack my-team-baseline

Die generierten Dateien liegen unter --dir (Standard ./policies) und können direkt mit infraguard scan -p ./policies <template> und infraguard policy test verwendet werden. Siehe Benutzerdefinierte Regeln Erstellen.

FlagBeschreibungStandard
--iacZiel-IaC: ros, terraform oder bothboth
--severityhigh, medium oder lowmedium
--resource-typeROS-Ressourcentyp (wiederholbar)
--tf-resource-typeTerraform-Ressourcentyp (wiederholbar)
--dirAusgabe-Wurzelverzeichnis./policies
--name-en / --name-zhRegelnameRegel-ID
--desc-en / --desc-zhRegelbeschreibungTODO
--no-testKeine Test-Fixtures generierenfalse
--forceVorhandene Dateien überschreibenfalse
--packEin Pack-Skelett mit der angegebenen ID generieren

test

Verhaltenstests für Regeln anhand ihrer Fixtures ausführen:

infraguard policy test --dir ./policies
infraguard policy test --dir ./policies --rule my-rule --iac terraform
infraguard policy test --dir ./policies --format json

Für jede Regel werden die Fixtures unter <dir>/testdata/aliyun/rules/<rule>/ ausgewertet: compliant-Fixtures dürfen keine Verstöße gegen die Regel erzeugen und violation-Fixtures müssen mindestens einen erzeugen. Der Exit-Code ist 0, wenn alle Fälle bestehen, 1 bei einem Fehler und 2, wenn keine Fixtures gefunden werden (es sei denn, --allow-empty). Siehe Regeln Testen.

FlagBeschreibungStandard
--dirWurzelverzeichnis mit rules/ und testdata/./policies
--ruleNur die angegebene Regel-ID testen (wiederholbar)alle
--iacZu testende IaC: ros, terraform oder bothboth
--formatAusgabeformat: table oder jsontable
--allow-emptyMit 0 beenden, auch wenn keine Fixtures gefunden werdenfalse

validate

Benutzerdefinierte Richtlinien validieren:

infraguard policy validate my-rule.rego
infraguard policy validate ./policies/ --lang de

format

Richtliniendateien formatieren:

infraguard policy format rule.rego
infraguard policy format rule.rego --write
infraguard policy format rule.rego --diff

clean

Benutzer-Richtlinienverzeichnis bereinigen:

infraguard policy clean # Interaktiver Modus mit Bestätigung
infraguard policy clean --force # Bestätigung überspringen
infraguard policy clean -f # Kurzes Flag

Entfernt alle Richtlinien aus ~/.infraguard/policies/. Betrifft keine integrierten Richtlinien oder Arbeitsbereichsrichtlinien.

Für weitere Details siehe Richtlinien Verwalten.