CodeQL 기본 설정을 조직 정책으로 묶는다: GitHub 코드 스캔의 새 확장 방식

GitHub 코드 스캔 기본 설정이 중앙 CodeQL 구성 파일을 받아들인다. 조직 전체 쿼리·경로·위협 모델을 통일할 때 확인할 적용 범위와 주의점을 정리한다.

CodeQL 기본 설정을 조직 정책으로 묶는다: GitHub 코드 스캔의 새 확장 방식

GitHub는 2026년 8월 4일 코드 스캔 기본 설정(default setup)에 조직이 관리하는 CodeQL 구성 파일을 연결하는 기능을 일반 제공한다고 밝혔다. 저장소마다 GitHub Actions 워크플로를 따로 유지하지 않아도 공통 쿼리, 제외 경로와 위협 모델을 적용할 수 있게 된 변화다.

무엇이 바뀌었나

새 저장소 속성 github-codeql-config-file에 CodeQL 구성 파일 경로를 지정하면 기본 설정이 그 내용을 내장 기본값과 병합한다. 구성 파일은 같은 저장소뿐 아니라 조직의 중앙 저장소에도 둘 수 있다. 조직 소유자는 기본값을 강제하거나, 개별 저장소가 덮어쓸 수 있도록 허용할 수 있다.

다른 저장소의 구성 파일을 가리키는 문법도 단순해졌다. 저장소 이름만 지정하면 같은 조직의 중앙 저장소 main 브랜치에 있는 기본 구성 경로를 사용한다. 비공개 저장소의 파일은 조직 수준 Git Source 비공개 레지스트리로 접근 권한을 줄 수 있다.

개발자에게 왜 중요한가

보안 분석을 수백 개 저장소에 적용할 때 가장 흔한 문제는 워크플로 복제와 설정 편차다. 이번 방식은 기본 설정의 자동 업데이트 장점을 유지하면서, 조직이 필요한 추가 쿼리와 제외 규칙을 한곳에서 관리하게 한다. 저장소 팀은 보안 워크플로 파일의 반복 수정 대신 애플리케이션별 예외 검토에 집중할 수 있다.

기존 프로젝트 영향

기존 기본 설정은 새 속성을 지정하지 않으면 그대로 동작한다. 중앙 구성을 연결하면 내장 설정과 병합되므로, 추가 쿼리나 더 넓은 분석 범위가 실행 시간과 경고 수를 늘릴 수 있다. 위협 모델과 CodeQL 모델 팩을 기본 설정 화면에서 골랐다면 병합 과정에서 보존된다.

지원 범위는 github.com에서 일반 제공이며 GitHub Enterprise Server 3.23에 포함될 예정이다. 더 오래된 GHES는 같은 관리 방식을 즉시 사용할 수 없으므로 서버 업그레이드 계획과 현재 CodeQL 실행 방식을 함께 확인해야 한다.

적용 전 확인 사항

  • 대표 저장소 한 곳에 먼저 적용해 분석 시간, 경고 수와 제외 경로가 의도대로 달라지는지 비교한다.
  • 중앙 구성 저장소의 변경 권한과 코드 리뷰 규칙을 보안 정책 수준으로 관리한다.
  • 구성 파일 참조 브랜치와 경로를 명시할지, main의 기본 경로를 따를지 결정한다.
  • 비공개 중앙 저장소를 사용할 때 Git Source 권한 범위를 최소화한다.
  • 고급 설정 워크플로를 이미 쓰는 저장소는 기본 설정 전환이 필요한지 별도로 판단한다.

출처