Politiques sous forme de code et contrôles de conformité
Ajoutez une couche de garde-fou à votre stratégie de tests en recherchant les violations de sécurité et de conformité dans les plans Terraform avant leur mise en production.
Politiques sous forme de code et contrôles de conformité est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.
Les tests ne sont pas uniquement fonctionnels
Les tests unitaires et d’intégration prouvent que votre infrastructure fonctionne. Le code de politique prouve qu’elle est autorisée : aucun compartiment S3 public, uniquement les types d’instances approuvés, présence des étiquettes requises. Ces vérifications s’exécutent automatiquement pour chaque modification.
Où s’insèrent les vérifications de politique
Les vérifications de politique s’insèrent entre plan et apply. La sortie du plan est analysée et toute violation bloque apply, comme un test qui échoue bloque une fusion.
Analyse statique avec tfsec
tfsec analyse votre HCL à la recherche de configurations incorrectes connues, sans avoir besoin d’identifiants d’accès au nuage. Il est suffisamment rapide pour être exécuté à chaque validation.
tfsec .Lire la sortie de Scanner
Les outils d’analyse indiquent un identifiant de règle, un niveau de gravité et la ressource fautive. Utilisez l’identifiant pour consulter les instructions de correction ou masquer un risque accepté.
Result: aws-s3-enable-bucket-encryption
Severity: HIGH
Resource: aws_s3_bucket.dataCheckov pour les analyses multiformats
Checkov prend en charge Terraform ainsi que d’autres formats d’IaC et associe les résultats à des référentiels de conformité tels que CIS et SOC2.
checkov -d . --framework terraformAnalyser le plan, pas seulement le code
Pour détecter les problèmes qui n’apparaissent qu’après la résolution des variables, exportez le plan au format JSON et analysez cet artefact.
terraform plan -out=tfplan.binary
terraform show -json tfplan.binary > plan.json
checkov -f plan.jsonOpen Policy Agent et Conftest
Pour les règles propres à l’organisation, OPA avec conftest vous permet d’écrire des politiques dans le langage Rego et de les tester sur le JSON du plan.
conftest test plan.json --policy policy/Une politique Rego simple
Cette règle Rego refuse tout compartiment S3 dont ACL est défini sur public-read. Conftest fait échouer l’exécution si la règle correspond.
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"
}Masquer les risques acceptés
Parfois, un résultat est une exception connue. Les commentaires intégrés permettent d’ignorer une règle précise tout en conservant une trace d’audit, au lieu de désactiver toute l’analyse.
resource "aws_s3_bucket" "logs" {
# tfsec:ignore:aws-s3-enable-bucket-encryption
bucket = "public-logs"
}Faire échouer la compilation
Dans l’intégration continue, ces outils renvoient un code de sortie différent de zéro en cas de violation, ce qui fait échouer le pipeline et empêche l’exécution d’un apply non conforme.
tfsec . --soft-fail=falseSuperposer les vérifications
Un pipeline mature exécute d’abord fmt et validate, puis les analyses statiques de politique (tfsec/checkov), ensuite les règles OPA personnalisées, et enfin la suite de tests fonctionnels Terratest. Chaque couche détecte une catégorie différente de problème.
Vérification rapide
Testez vos connaissances du code de politique.
Récapitulatif : garde-fous pour l’infrastructure
Vous avez ajouté une couche de conformité aux tests :
- tfsec et Checkov pour analyser les configurations incorrectes connues.
- OPA/conftest avec Rego pour les règles personnalisées de l’organisation.
- Analyser le JSON du plan pour détecter les problèmes liés aux valeurs résolues.
- Les codes de sortie différents de zéro bloquent les apply non conformes dans l’intégration continue.
Questions Fréquemment Posées
La leçon « Politiques sous forme de code et contrôles de conformité » est-elle gratuite ?
Oui — le texte complet de « Politiques sous forme de code et contrôles de conformité » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Politiques sous forme de code et contrôles de conformité » ?
Ajoutez une couche de garde-fou à votre stratégie de tests en recherchant les violations de sécurité et de conformité dans les plans Terraform avant leur mise en production. Tu pratiques DevOps Bootcamp avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer DevOps Bootcamp ?
Aucune expérience préalable n'est requise. DevOps Bootcamp sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Politiques sous forme de code et contrôles de conformité » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon DevOps Bootcamp ?
Oui. Chaque leçon DevOps Bootcamp inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- `validate` et `fmt` de Terraform
- Tests unitaires avec Terratest
- Tester l’intégration des ressources cloud
- Politiques sous forme de code et contrôles de conformité