Policy as Code e controlli di conformità
Aggiunga un livello di protezione alla strategia di test analizzando i piani Terraform alla ricerca di violazioni di sicurezza e conformità prima che arrivino in produzione.
Policy as Code e controlli di conformità è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
I test non sono solo funzionali
I test unitari e di integrazione dimostrano che la Sua infrastruttura funziona. La policy as code dimostra che è consentita: nessun bucket S3 pubblico, solo tipi di istanza approvati, tag obbligatori presenti. Questi controlli vengono eseguiti automaticamente per ogni modifica.
Dove si inseriscono i controlli delle policy
I controlli delle policy si inseriscono tra plan e apply. L'output del plan viene analizzato e una violazione blocca l'apply, proprio come un test non superato blocca un merge.
Scansione statica con tfsec
tfsec analizza il Suo HCL alla ricerca di configurazioni errate note, senza richiedere credenziali cloud. È abbastanza veloce da poter essere eseguito a ogni commit.
tfsec .Leggere l'output dello scanner
Gli scanner segnalano un ID della regola, la gravità e la risorsa che viola la regola. Utilizzi l'ID per consultare le indicazioni sulla correzione o per escludere un rischio accettato.
Result: aws-s3-enable-bucket-encryption
Severity: HIGH
Resource: aws_s3_bucket.dataCheckov per scansioni multi-framework
Checkov supporta Terraform e altri formati IaC e collega i risultati a framework di conformità come CIS e SOC2.
checkov -d . --framework terraformScansionare il plan, non solo il codice
Per rilevare i problemi che compaiono solo dopo la risoluzione delle variabili, esporti il plan in JSON e analizzi quell'artefatto.
terraform plan -out=tfplan.binary
terraform show -json tfplan.binary > plan.json
checkov -f plan.jsonOpen Policy Agent e Conftest
Per le regole organizzative personalizzate, OPA insieme a conftest consente di scrivere policy nel linguaggio Rego e di testarle sul JSON del plan.
conftest test plan.json --policy policy/Una semplice policy Rego
Questa regola Rego nega qualsiasi bucket S3 il cui ACL sia impostato su public-read. Conftest interrompe l'esecuzione se la regola trova una corrispondenza.
package main
deny[msg] {
r := input.resource_changes[_]
r.type == "aws_s3_bucket"
r.change.after.acl == "public-read"
msg := "S3 buckets must not be public-read"
}Escludere i rischi accettati
A volte un risultato è un'eccezione nota. I commenti inline consentono di ignorare una regola specifica mantenendo una traccia per l'audit, invece di disabilitare l'intera scansione.
resource "aws_s3_bucket" "logs" {
# tfsec:ignore:aws-s3-enable-bucket-encryption
bucket = "public-logs"
}Fallimento della build
In CI, questi strumenti restituiscono un codice di uscita diverso da zero in presenza di violazioni; ciò fa fallire la pipeline e impedisce di procedere con un apply non conforme.
tfsec . --soft-fail=falseStratificare i controlli
Una pipeline matura esegue prima fmt e validate, poi le scansioni statiche delle policy (tfsec/checkov), quindi le regole OPA personalizzate e solo alla fine la suite funzionale Terratest. Ogni livello rileva una classe diversa di problemi.
Verifica rapida
Verifichi le Sue conoscenze sulla policy-as-code.
Riepilogo: protezioni per l'infrastruttura
Ha aggiunto un livello di conformità ai test:
- tfsec e Checkov per le scansioni delle configurazioni errate note.
- OPA/conftest con Rego per le regole organizzative personalizzate.
- Scansione del JSON del plan per rilevare i problemi nei valori risolti.
- I codici di uscita diversi da zero bloccano gli apply non conformi in CI.
Impara DevOps Bootcamp con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 142
- Lezioni
- 568
Domande Frequenti
La lezione «Policy as Code e controlli di conformità» è gratuita?
Sì — il testo completo di «Policy as Code e controlli di conformità» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Policy as Code e controlli di conformità»?
Aggiunga un livello di protezione alla strategia di test analizzando i piani Terraform alla ricerca di violazioni di sicurezza e conformità prima che arrivino in produzione. Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Policy as Code e controlli di conformità»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- `validate` e `fmt` di Terraform
- Test unitari con Terratest
- Test d'integrazione delle risorse cloud
- Policy as Code e controlli di conformità