Supported Scanners
The IaC provider leverages Trivy to support multiple scanners, including:- Vulnerability
- Misconfiguration
- Secret
- License
How It Works
- The IaC provider scans local directories (or specified paths) for supported IaC files, or scans remote repositories.
- No cloud credentials or authentication are required for local scans.
- For remote repository scans, authentication can be provided via git URL, CLI flags or environment variables.
- Check the IaC Authentication page for more details.
- Mutelist logic (filtering) is handled by Trivy, not Prowler.
- Results are output in the same formats as other Prowler providers (CSV, JSON, HTML, etc.).
Prowler App
Added in: 5.14.0
Step 1: Access Prowler Cloud/App
- Navigate to Prowler Cloud or launch Prowler App
-
Go to “Configuration” > “Cloud Providers”

-
Click “Add Cloud Provider”

-
Select “Infrastructure as Code”

-
Add the Repository URL and an optional alias, then click “Next”

Step 2: Enter Authentication Details
-
Optionally provide the authentication details for private repositories, then click “Next”

Step 3: Verify Connection & Start Scan
-
Review the provider configuration and click “Launch scan” to initiate the scan

Prowler CLI
Added in: 5.8.0
Usage
Use theiac argument to run Prowler with the IaC provider. Specify the directory or repository to scan, frameworks to include, and paths to exclude.
Scan a Local Directory (default)
Scan a Remote GitHub Repository
Authentication for Remote Private Repositories
Authentication for private repositories can be provided using one of the following methods:- GitHub Username and Personal Access Token (PAT):
- GitHub OAuth App Token:
- If not provided via CLI, the following environment variables will be used (in order of precedence):
GITHUB_OAUTH_APP_TOKENGITHUB_USERNAMEandGITHUB_PERSONAL_ACCESS_TOKEN
- If neither CLI flags nor environment variables are set, the scan will attempt to clone without authentication or using the credentials provided in the git URL.
Mutually Exclusive Flags
--scan-pathand--scan-repository-urlare mutually exclusive. Only one can be specified at a time.

