La conformité dans votre pipeline.
Ajoutez WOMBATpass à n'importe quel workflow. Analysez Terraform, Bicep, CDK ou Pulumi à chaque pull request et à chaque push, puis envoyez le résultat complet à votre serveur WOMBATpass pour les tableaux de bord, l'analyse des écarts et les preuves d'audit.
Une étape. Une visibilité complète.
L'action gère l'installation de la CLI, l'analyse, l'envoi des résultats et l'application des politiques, pour que votre équipe se concentre sur la livraison.
Installation automatique de la CLI
Installe automatiquement la dernière version de wafpass-core depuis PyPI, ou utilisez une source pip personnalisée ou un binaire préinstallé.
Analyse multi-IaC
Analysez des fichiers Terraform, Bicep, CDK ou Pulumi en une seule étape. Prend en charge plusieurs chemins et le JSON de plan Terraform pour visualiser les changements.
Envoi au serveur
Envoie le wafpass-result.json complet vers POST /api/v1/runs pour que les tableaux de bord et les paquets de preuves restent à jour.
Portes de politiques
Politiques fail_on configurables, de never à critical. L'étape n'échoue qu'une fois le résultat enregistré en toute sécurité sur le serveur.
Authentification flexible
Utilisez un jeton Bearer pour les utilisateurs interactifs ou une clé d'API d'ingestion pour les exécutions CI/CD sans interface. Les deux sont transmis de façon sécurisée au serveur.
Métadonnées CI/CD
Marque les exécutions comme is_cicd: true avec triggered_by: github-actions, et transmet automatiquement la branche, le SHA du commit, le projet et l'environnement.
Ajoutez-la à n'importe quel workflow.
Récupérez votre dépôt, lancez l'action et affichez les résultats de conformité là où votre équipe travaille déjà.
name: WOMBATpass Scan
on:
push:
branches: [main, develop]
pull_request:
jobs:
wafpass:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run WOMBATpass
uses: WAF2p/wafpass-action@v0.1.1
with:
server_url: ${{ vars.WAFPASS_SERVER_URL }}
api_key: ${{ secrets.WAFPASS_API_KEY }}
scan_path: ./infra
iac_framework: terraform
project: ${{ github.repository }}
stage: ${{ github.ref_name == 'main' && 'prod' || 'dev' }}
fail_on: high
upload_source: true
- name: Run WOMBATpass
uses: WAF2p/wafpass-action@v0.1.1
with:
server_url: ${{ vars.WAFPASS_SERVER_URL }}
api_key: ${{ secrets.WAFPASS_API_KEY }}
scan_path: ./aws ./azure ./gcp
iac_framework: terraform
project: ${{ github.repository }}
stage: ${{ github.ref_name == 'main' && 'prod' || 'dev' }}
fail_on: high
upload_source: true
Entrées et sorties.
Tout ce que l'action accepte et renvoie, en un coup d'œil.
Entrées
| Entrée | Obligatoire | Par défaut | Description |
|---|---|---|---|
server_url | oui | aucune | URL de base du serveur Wombat. |
api_token | non | aucune | Jeton Bearer. Fournissez celui-ci ou api_key. |
api_key | non | aucune | Clé d'API d'ingestion (X-Api-Key). |
scan_path | oui | . | Chemin(s) à analyser. Séparez plusieurs chemins par des espaces. |
iac_framework | non | terraform | Plugin IaC : terraform, bicep, cdk, pulumi. |
stage | non | aucune | Environnement de déploiement, p. ex. dev, staging, prod. |
project | non | nom du dépôt | Identifiant du projet / dépôt. |
fail_on | non | fail | fail, skip, any, low, medium, high, critical, never. |
upload_source | non | false | Envoie les fichiers sources pour les aperçus de diff dans le tableau de bord. |
fetch_controls | non | false | Clone les contrôles depuis le dépôt du framework avant l'analyse. |
Sorties
| Sortie | Description |
|---|---|
run_id | UUID de l'exécution créée sur le serveur Wombat. |
score | Score de conformité global renvoyé par le serveur. |
findings_count | Nombre de constats dans le résultat de l'analyse. |
Ajoutez WOMBATpass à votre pipeline.
Installez l'action depuis le GitHub Marketplace, copiez le workflow et affichez la conformité de l'infrastructure à chaque PR.