
Détectez les violations de conformité et de sécurité dans l'Infrastructure as Code pour atténuer les risques avant de provisionner une infrastructure cloud native.
- Ce projet n'est plus maintenu. Le dépôt est archivé et aucune mise à jour, problème ou demande de fusion ne sera accepté.
- N'hésitez pas à le forker si vous souhaitez poursuivre le développement.

Terrascan est un analyseur de code statique pour l'Infrastructure en tant que Code (IaC). Terrascan vous permet de :
Pour essayer Terrascan dans votre navigateur, consultez le bac à sable Terrascan https://www.tenable.com/terrascan
Pour en savoir plus sur les fonctionnalités et capacités de Terrascan, consultez le portail de documentation : https://runterrascan.io
Rejoignez la communauté Tenable 👇
Terrascan prend en charge plusieurs méthodes d'installation et est également disponible en tant qu'image Docker. Consultez la page des versions de Terrascan pour la dernière version des builds sur toutes les plateformes prises en charge. Sélectionnez le binaire correct pour votre plateforme.
curl -L "$(curl -s https://api.github.com/repos/tenable/terrascan/releases/latest | grep -o -E "https://.+?_Linux_x86_64.tar.gz")" > terrascan.tar.gz
tar -xf terrascan.tar.gz terrascan && rm terrascan.tar.gz
sudo install terrascan /usr/local/bin && rm terrascan
terrascan
AURLes utilisateurs d'ArchLinux et Manjaro peuvent installer par :
yay -S terrascan
brewLes utilisateurs de Homebrew peuvent installer par :
$ brew install terrascan
Terrascan est également disponible en tant qu'image Docker et peut être utilisé comme suit :
$ docker run tenable/terrascan
Reportez-vous à la documentation pour plus d'informations.
Pour analyser votre code à la recherche de problèmes de sécurité, vous pouvez exécuter la commande suivante (par défaut, elle analyse Terraform).
$ terrascan scan
Remarque : Terrascan se fermera avec un code d'erreur si des erreurs ou des violations sont détectées lors d'une analyse.
| Scenario | Exit Code |
|---|---|
| le résumé de l'analyse comporte des erreurs et des violations | 5 |
| le résumé de l'analyse comporte des erreurs mais aucune violation | 4 |
| le résumé de l'analyse comporte des violations mais aucune erreur | 3 |
| le résumé de l'analyse ne comporte ni violation ni erreur | 0 |
| la commande d'analyse échoue en raison d'entrées non valides | 1 |
Terrascan peut être intégré dans des pipelines CI/CD pour appliquer les bonnes pratiques de sécurité. Veuillez consulter notre documentation pour l'intégration avec votre pipeline.
Vous pouvez utiliser la commande terrascan avec les options suivantes :
$ terrascan
Terrascan
Usage:
terrascan [command]
Available Commands:
help Help about any command
init Initialize Terrascan
scan Detect compliance and security violations across Infrastructure as Code.
server Run Terrascan as an API server
version Terrascan version
Flags:
-c, --config-path string config file path
-h, --help help for terrascan
-l, --log-level string log level (debug, info, warn, error, panic, fatal) (default "info")
-x, --log-type string log output type (console, json) (default "console")
-o, --output string output type (human, json, yaml, xml) (default "human")
Use "terrascan [command] --help" for more information about a command.
Les politiques Terrascan sont écrites en utilisant le langage de politique Rego. Chaque rego inclut un fichier JSON "rule" qui définit les métadonnées de la politique. Par défaut, Terrascan télécharge les politiques depuis les dépôts Terrascan lors de la première analyse. Cependant, si vous souhaitez télécharger les dernières politiques, vous devez exécuter le processus d'initialisation. Consultez la section Utilisation pour des informations sur le processus d'initialisation.