Unify infrastructure findings
The native rule and checkov flagging the same resource become one logical finding with a corroborating edge.
Scan infrastructure as code (IaC) for security misconfigurations. Keep the finding connected to its template and the resources it describes.
Review configuration in the source template before it becomes deployed infrastructure.
Show the configuration evidence so the developer can understand the rule.
Connect the revised template to the follow-up scan and policy review.
IaC scanning applies policy to the definition of infrastructure rather than to the infrastructure itself. It catches the problem in the pull request that introduces it, with an owner and a line number. Its blind spot is indirection: values that arrive through variables, templates and overlays, which a scanner reading raw text never sees.
SecurityVault resolves supported Helm values, Kustomize overlays and literal Terraform defaults before applying checks. Static resolution does not replace a full deployment plan or live posture assessment. Unresolved values remain visible. The finding lands on one graph with your code, images and live cloud posture, and a fail-closed gate stops the change in review. Platform teams get one finding per issue with a file and a line number, not a raw rule dump.
Read the Terraform, Kubernetes or Helm configuration.
Locate the setting that violates a rule.
Evaluate the finding before the deployment runs.
The configuration file remains the developer’s starting point for a fix.
.Values references, including the toYaml | nindent idiom, are substituted from values.yaml, and Kustomize overlays are composed where supported. Review unresolved expressions and validate the rendered deployment through your normal infrastructure workflow.cidr_blocks = [var.public] with a default of 0.0.0.0/0 is caught.pull_request_target running untrusted fork code with secrets, artifact poisoning between workflows, and credentials hard-coded in env.It lands on the same graph as code, dependency and image findings, attached to the repository and the commit that introduced the misconfiguration.
The native rule and checkov flagging the same resource become one logical finding with a corroborating edge.
Existing checkov skips keep working through an explicit rule mapping, and every waiver stays visible with its reason.
The definition is checked here; the deployed resource is checked by cloud posture on the same graph.
Yes, before terraform apply or a Helm release ever runs. The pull-request or pipeline gate weighs IaC findings against your severity threshold and organisation policies. A failed or timed-out scan is a deny, and so is an evaluator error. Kubernetes workloads get a second checkpoint at admission, so a manifest applied outside the pipeline still meets policy before it runs. See deployment gates, Kubernetes security and policy-as-code gates with OPA.
Evaluate findings before terraform apply or Helm release.
Check Kubernetes workloads entering the cluster.
Deny when scanning or evaluation cannot complete.
A deployment outside the pipeline still meets admission policy.
Every waiver and inline suppression is recorded with its reason, so an exception in a Terraform module is a reviewed decision, not a silent skip. IaC findings are recorded as infrastructure evidence when controls are evaluated, and the cross-walk maps that evidence across 6 seeded framework catalogues, CIS among them, to the configuration controls in your audit.
Identify the definition being reviewed.
Retain the reason for an exception or suppression.
Use the infrastructure evidence in the audit cross-walk.
An exception is a recorded decision, not a silent skip.
The definition is half the picture. Cloud posture (CSPM) checks the deployed resource, Kubernetes security enforces settings at admission, and threat modeling turns the same Terraform into a data-flow diagram. Built for security engineers and developers who own the infrastructure code. See cloud posture. Glossary: IaC scanning, misconfiguration, policy as code.
See Helm and Terraform checked as rendered, with one finding per issue and a gate on the pull request.