코드로 표현된 인프라 검사
인프라 코드는 서버와 네트워크 등의 구성을 선언한다. 문법이 올바르더라도 접근 권한이나 공개 범위가 의도와 다를 수 있다. Checkov는 이런 설정을 정책과 비교해 배포 전에 검토할 항목을 찾는다. Terraform 소스와 계획 파일, Kubernetes 설정 등 여러 종류의 입력을 지원한다.
리소스 관계를 함께 보기
하나의 필드만으로 판단하기 어려운 조건도 있다. Checkov의 그래프 기반 분석은 리소스 사이의 연결을 정책 평가에 활용한다. 기본 정책 외에 Python이나 YAML로 사용자 정의 정책을 작성할 수 있으며 정책 유형에 따라 표현 방식이 달라진다.
검사 결과를 개발 흐름에 연결
검사 결과는 명령줄 화면이나 JSON, SARIF 등의 형식으로 출력할 수 있다. 변경 사항을 검토하는 자동화 과정에 연결하면 반복적인 구성 검사를 수행할 수 있다. 다만 정적 분석 결과는 선택한 입력과 정책에 의존하므로 실행 중인 환경의 모든 동작을 보장하는 판정으로 해석해서는 안 된다.
관련 문서
Conftest / Terrascan / Kube-linter / Trivy / Terraform