이 문서는 정적분석 도구 도입을 위하여 Sonarqube와 비교 가능한 체크리스트를 공유하기 위해 작성되었다.






Sonarqube 지원 가능 기능 체크 리스트

구분기능체크참고사항
일반공지배너 게시 기능 여부 공지 배너 게시 기능 제공함.
SAML 방식의 인증 연동 지원 여부 Enterprise 버전에서 SAML 방식의 SSO 지원함.
Github, Bitbucket, Gitlab 등의 도구와 인증 위임 지원 여부 Developer 버전 이상에서 DeveOps 연동 기능 지원함.
분석 환경다양한 분석 방식 지원 여부 (CLI, 웹, 플러그인 등)  

SonarQube 스캐너를 통해 지원

  • SonarScanner CLI
  • SonarScanner for Maven
  • SonarScanner for Gradle
  • SonarScanner for .NET
  • SonarScanner for NPM
  • SonarScanner for Python
  • Azure DevOps, Jenkins 애드온 지
지원 OS다양한 운영체제에서 분석 지원 여부 (Windows, Linux, Unix, Mac OS 등) 

다음 플랫폼 지원

  • Linux (x64, AArch64).
  • Windows (x64).
  • macOS (x64, AArch64).
분석 지원 언어다양한 언어에 대한 분석 지원 여부 (C/C++, Java, Kotlin, Swift, Rust, Go, Dart 등)  에디션에 따라 최대 37개의 언어 분석 지
분석 지원 컴파일러다양한 컴파일러 분석지원 여부 (kotlinc, javac, Clang, Swift Compiler, dart2native 등) 

언어별로 다양한 컴파일러 지원

  • Java - javac, Maven, Gradle, Ant
  • C/C++ - gcc, clang, msvc
  • C# - MSBuild 
  • Javascript / Typescript 
  • Python - pip, pytest, pylint
  • Go 
  • Kotlin - Gradle, Maven
플러그인다양한 개발 환경 내에서 분석 수행이 가능하도록 지원 여부 (Eclipse, Visual Studio, Visual Studio Code, IntelliJ 등) 

IDE 별로 애드온이 있으며, 지원되는 IDE는 다음과 같음.

  • Eclipse
  • Visual Studio
  • VS Code
  • IntelliJ
정책설정프로젝트 별, 점검 규칙 설정 지원 여부 프로젝트 별로 Profile 설정 지원
점검 규칙에 대한 위험도 수정 지원 여부 Profile에서 룰별로 Severity 설정 지원
파일, 확장자, 패턴 등으로 분석 범위 지정 여부 와일드 카드 패턴을 통해 다양한 설정 지원
소스 코드 분석 시, 다양한 취약점 데이터 베이스의 정보 제공 여부 룰 및 이슈에서 태그 방식으로 cert, cwe, owasp 등 표기 지원
점검수행서버 / PC 환경에서 분석 지원 여부 (IDE, 원격 요청 툴 등) 
  • IDE - SonarQube IDE(구 SonarLint)로 지원
  • 서버 - CI/CD 도구와 연계하여 분석 지원
개발 중 수시로 소규모 분석을 지원하는 기능 제공 여부 (로컬 분석 툴 등) 
  • SonarQube IDE를 통해 개발 도중에 분석을 지원
외부 분석기 연동 기능(PMD, Ansible-Lint, Roslyn, Cfn-lint, Hadolint, Checkstyle, SpotBugs, ESLint, TSLint 등) 
  • 외부 분석기로 분석된 리포트를 경로를 소나스캐너 전송 시 지정하면 해당 결과를 SonarQube에서 확인 (ex sonar.go.govet.reportPaths) 
점검 결과 조치취약점(버그, 보안, 유지보수성) 트래킹 및 관리 기능 제공 
  • 취약점 발견 시, SonarQube 프로젝트에서 확인할 수 있으며, 상태 관리를 할 수 있음. 
취약점(버그, 보안, 유지보수성) 식별 데이터 제공 여부  
  • 취약점 발견 위치, 사유, 수정 방법, 관련된 추가 정보를 제공함. 
취약점(버그, 보안, 유지보수성) 발생 원인까지 과정 및 결과에 대한 가시성 제공 여부 


취약점(버그, 보안, 유지보수성) 조치 데이터 제공 여부 (사용 가능한 실제 소스 코드 수정 예시) 
  • 취약점 발견 시, 수정 코드 예시를 보여주며, 일부 취약점은 AI 기능을 통해 수정 코드를 생성할 수 있음. 
점검 결과 관리취약점(버그, 보안, 유지보수성) 발견 시, 취약 항목별 조치 관리 
신규 취약점(버그, 보안, 유지보수성) 발견 또는 조치 해결 시, 알림 기능 제공 
  • 이메일 연동을 통해 알림 기능 제공
신규 취약점(버그, 보안, 유지보수성) 결과 비교  
  • 취약점(보안, 신뢰성, 유지보수 등) 항목을 Issues 항목에서 확인 가능
취약점(버그, 보안, 유지보수성) 조치 내역 비교, 진단 전후 분석 및 보고서 제공  
  • 프로젝트 Overview에서 New Code, Overall Code에서 새롭게 개발된 코드에 현황 파악
DevSecOps 지원CI/CD 연동 가능 여부 (Jenkins, Github, bitbucket, ArgoCD)  
  • Github, Bitbucket, Azure DevOps, GitLab과 직접적인 연동 지원
DevOps 플랫폼 통합 여부 (Github, Bitbucket, Azure DevOps, Gitlab) 
  • Github, Bitbucket, Azure DevOps, GitLab과 직접적인 연동 지원
저장소 URL 및 인증 정보를 활용하여 직접 분석 연동 가능 여부 
  • Github, Bitbucket, Azure DevOps, GitLab과 직접적인 연동 지원
타 시스템과 연동 및 DevsecOps 환경을 위한 API 제공 여부 
신규 연동 편의 기능 제공 
대시보드대시보드 기능 제공 여부 
  • 프로젝트 메인화면(Overview)
  • 포트폴리오 메인화면(Overview)
사용자 관리사용자 권한 별 계정 관리 (관리자, 사용자) 
사용자 프로젝트 관리 권한 부여 (관리자, 사용자) 
SAML 방식의 인증 연동 지원 여부 
  • Enterprise 버전에서 SAML 방식의 SSO 지원함.
Github, Bitbucket, Gitlab 등의 도구와 인증 위임 지원 여부 
  • Github, Bitbucket, Azure DevOps, GitLab과 직접적인 연동 지원
보안제품 구성요소 간 암호화 통신(SSL) 
  • 지원함
솔루션 및 서버 메모리 및 네트워크 자원 사용량 확인 및 관리 기능 제공 여부 
  • 관리자 > System Info 에서 지원함. 
로그 관리장애 발생 시 디버깅을 위한 서비스 및 분석 로그 제공 여부 

다음과 같은 다양한 로그 제공

  • sonar.log - 메인 프로세스 로그
  • web.log - HTTP 요청 및 DB 관련 로그
  • ce.log - 분석 처리 관련 로그
  • es.log - 검색 관련 로그
  • access.log - 사용자 접근 관련 로그
시스템 접근, 시스템 동작을 모니터링 할 수 있는 감사 로그 제공 여부 
  • Administration > Audit Logs 에서 Audit Log 다운로드 제공






  • 레이블 없음