conftest VS tfsec

Compare conftest vs tfsec and see what are their differences.

conftest

Write tests against structured configuration data using the Open Policy Agent Rego query language (by open-policy-agent)

tfsec

Security scanner for your Terraform code [Moved to: https://github.com/aquasecurity/tfsec] (by tfsec)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
conftest tfsec
9 7
2,785 2,991
1.0% -
8.5 9.4
6 days ago almost 3 years ago
Go Go
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

conftest

Posts with mentions or reviews of conftest. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-12-28.
  • Validation on list(object) variables
    1 project | /r/Terraform | 8 May 2023
    I wrote following conftest.dev (OPA), sample policy
  • The default.go file meaning
    1 project | /r/golang | 22 Apr 2023
  • Introducing Conftest and setting up CI with Github Actions to automate reviewing of Terraform code
    3 projects | dev.to | 28 Dec 2021
    name: tf-plan-apply on: pull_request: branches: [ main ] env: TF_VERSION: 1.0.0 CONFTEST_VERSION: 0.28.3 WORKING_DIR: ./ jobs: terraform: name: aws-eureka-pairs-etc-s3 runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Install conftest run: | wget -O - 'https://github.com/open-policy-agent/conftest/releases/download/v${{ env.CONFTEST_VERSION }}/conftest_${{ env.CONFTEST_VERSION }}_Linux_x86_64.tar.gz' | tar zxvf - ./conftest --version //❶ - name: Setup Terraform uses: hashicorp/setup-terraform@v1 with: terraform_wrapper: false //❷ terraform_version: ${{ env.TF_VERSION }} cli_config_credentials_token: ${{ secrets.YOUR_CRED_NAME}} - name: Terraform Init ${{ env.WORKING_DIR }} working-directory: ${{ env.WORKING_DIR }} run: terraform init - name: Terraform Plan ${{ env.WORKING_DIR }} if: github.event_name == 'pull_request' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} working-directory: ${{ env.WORKING_DIR }} id: plan run: terraform plan -out=tfplan -no-color -lock=false -parallelism=50 - name: Convert terraform plan result to json formmat if: github.event_name == 'pull_request' id: convert working-directory: ${{ env.WORKING_DIR }} run: terraform show -json tfplan > tfplan.json - name: conftest test if: github.event_name == 'pull_request' id: conftest run: ./conftest test --no-color ${{ env.WORKING_DIR }}/tfplan.json //❸
  • Kubernetes Security Checklist 2021
    28 projects | dev.to | 18 Oct 2021
    Workload configuration should be audited regularly (Kics, Kubeaudit, Kubescape, Conftest, Kubesec, Checkov)
  • Don't let your Terraform go rogue with Conftest and the Open Policy Agent
    2 projects | dev.to | 25 Jun 2021
    Insert Conftest! As they state in their GitHub description, Conftest tests against structured configuration data using the Open Policy Agent Rego query language. In the case of Terraform, this means we're actually running unit tests against sample JSON and actual tests against the Terraform state JSON.
  • Using Open Policy Agent and Conftest to Validate Your Openshift 4 IPI Configuration
    1 project | dev.to | 25 Jun 2021
    While Rego is the policy language we use to assemble our policies, we still need something to run those policies with. If you have a cluster and you want to actively evaluate policies, you can end up running an instance of Open Policy Agent and it's associated tooling. However in our case, we just want to check things at runtime (or just on some recurring basis such as when changes get checked in or a pull request is submitted). In the latter instance, we are able to use another tool from the Open Policy Agent project called ConfTest. What ConfTest allows us to do is to specify a file or directory of files that we want to inspect along with the set of policies we want to inspect them with. It then takes all of that and dumps out the associated outputs from those policies and tell us the results (i.e. the messages, how many policies were checked and the results of those policies). This tool is much better suited for our use case, so this is what we will proceed with. To grab the latest version of ConfTest, you can grab the latest release from here.
  • !!!*IMP: Conftest Integration with AWS or Other*!!!!
    1 project | /r/devopsish | 18 Jun 2021
    OR HOW TO RUN https://github.com/open-policy-agent/conftest AS CI/CD in Circle CI to apply policies?
  • Terraforming in 2021 – new features, testing and compliance
    12 projects | dev.to | 2 May 2021
    If you like terraform-compliance, Conftest might also be worth having a look. It has its own DSL to write policies, and allows you to test multiple frameworks. We found this blog post from Lennard Eijsackers very informative, and would thus rather recommend you to check it out.
  • Mental models for understanding Kubernetes Pod Security Policy PSP
    4 projects | /r/kubernetes | 16 Jan 2021
    Can Gatekeeper and Conftest single-source the same set of rules? I'm looking at https://github.com/open-policy-agent/conftest/issues/54#issuecomment-528988831 and not seeing how.

tfsec

Posts with mentions or reviews of tfsec. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-04-17.
  • Terraform in AWS
    4 projects | dev.to | 17 Apr 2022
    Using pre-commit framework with terraform repository, will help your code to be kept clean, formated, updated document and checked for tf security issues (optional with tfsec) before committing and pushing the code to git source.
  • Terraforming in 2021 – new features, testing and compliance
    12 projects | dev.to | 2 May 2021
    Here again more than one tool exists to assist. We will highlight two of the most popular ones here: tfsec and checkov. Both provide a predefined set of checks that they use to inspect your code, allowing to explicitly open exceptions (if you really want to) by annotating your code with comments, and adjust the configuration to ignore some modules, for example.
  • How FirstPort manage GitHub, using code stored in GitHub
    5 projects | dev.to | 27 Apr 2021
    An additional benefit of using a CI workflow is adding automated tests. In this scenario, I’ve added a step leveraging tfsec to scan for static code vulnerabilities. In the example below, tfsec warns against creating an Azure network security rule which is fully open. This will halt and fail the workflow unless I provide an ignore comment to accept the warning.
  • Terraform v15.0 with AWS (EKS deployment)
    7 projects | dev.to | 17 Apr 2021
    · Provision an EKS Cluster (AWS) · Terraform v15.0 · Terraform Registry · Pre-Commit · Terraform Pre-commit · Terraform-docs · Tflint · Tfsec
  • A way to restrict options for devs in AWS
    2 projects | /r/devops | 2 Apr 2021
    Using terraform, create a skeleton directory that they can review for how EC2 instances should be created. Use tools like https://github.com/tfsec/tfsec or other scanners/linters to validate that your developers followed this process and didn't uncheck something.
  • Terraform VMware vSphere Provider - is it worth it?
    1 project | /r/Terraform | 12 Jan 2021
    I know tfsec (https://github.com/tfsec/tfsec) which is pretty good for AWS resources but I think vSphere resources are not implemented.
  • Gopher Gold #15 - Wed Oct 14 2020
    16 projects | dev.to | 14 Oct 2020
    tfsec/tfsec (Go): 🔒🌍 Static analysis powered security scanner for your terraform code

What are some alternatives?

When comparing conftest and tfsec you can also consider the following projects:

checkov - Prevent cloud misconfigurations and find vulnerabilities during build-time in infrastructure as code, container images and open source packages with Checkov by Bridgecrew.

terratest - Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.

tflint - A Pluggable Terraform Linter

terrascan - Detect compliance and security violations across Infrastructure as Code to mitigate risk before provisioning cloud native infrastructure.

inspec - InSpec: Auditing and Testing Framework

atlantis - Terraform Pull Request Automation

gatekeeper-library - 📚 The OPA Gatekeeper policy library

pre-commit-hooks - Some out-of-the-box hooks for pre-commit

Kyverno - Kubernetes Native Policy Management

terraform-aws-gitlab-runner - Terraform module for AWS GitLab runners on ec2 (spot) instances