풀 리퀘스트 Checks
PR Checks로 자동 보안 스캔 소개
Snyk PR Checks 기능을 사용하면 코드를 병합하기 전에 PR을 자동으로 스캔하여 문제를 찾을 수 있습니다. Snyk는 자동화된 의사 팀원(“보안 전문 리뷰어”) 역할을 하여 잠재적인 문제를 찾아 코드가 커밋되기 전에 PR에 리뷰 노트를 남깁니다.
PR은 코드 리뷰가 발생하는 개발 프로세스의 지점이지만, PR Checks를 통해 보안 스캔을 개발자의 작업 흐름과 통합하여 개발 팀을 강화하고 배포된 코드에서 보안 문제가 발생하는 것을 방지할 수 있습니다.
Snyk 풀 리퀘스트 경험의 일환인 Snyk Issue Summary Comment 기능을 통해 각 Pull Request마다 PR 코멘트를 받아 최근 PR Check 결과에 대한 종류 별 체크 및 심각도 별 발견된 결과의 개수를 요약하여 제공받을 수 있습니다. 이는 PR에 PR Check 스캔 결과에 관한 추가 정보를 제공함으로써 콘텍스트 전환이 감소됩니다.
변경 사항 테스트
Snyk PR Checks 기능을 사용하면 현재 코드베이스의 변경 사항이 문제를 발생시키는지 테스트할 수 있습니다. 이 변경 테스트는 코드베이스의 보안을 지속적으로 유지하는 데 도움이 됩니다.
개발자들에게 변동 관련 결함은 관련이 있고 쉽게 수정할 수 있으며, 누적된 결함이 아닌 변동 관련 결함을 수정함으로써 안전한 코드를 배포하는 과정이 쉬워집니다. 개발 프로세스 초기에 보안 문제를 미리 감지하고 새 코드를 작성한 후 즉시 테스트 결과를 확인하며 문제를 발견하고 수정할 수 있습니다.
“전”과 “후”의 테스트
Snyk PR Checks 기능은 PR과 함께 "전" 및 "후" 브랜치의 실시간 테스트를 실행하고 새 브랜치가 더 많은 문제를 갖고 있을 때에만 실패합니다. 이를 통해 마지막 스캔 이후 도입된 문제(예: 외부에서 도입된 새 취약점)를 해결할 수 있습니다. Snyk PR Checks는 코드 변경으로 트리거되며 저장소 전체에서 문제를 찾습니다. 따라서 PR Check는 코드 내 문제와 마지막 Snyk 스캔 후 도입된 다른 문제를 찾습니다. Snyk PR Checks 기능을 사용하여 소스 코드 관리자(SCM)에서 PR을 제출할 때 실시간으로 코드 변경을 자동으로 스캔하여 코드베이스로 새로운 보안 문제가 진입하는 것을 방지할 수 있습니다.
PR Checks 사용 이유
자동으로 스캔된 풀 리퀘스트
제출된 풀 리퀘스트를 바로 실시간으로 코드 변경을 스캔하여 제품으로 전달되기 전에 잠재적인 문제를 감지합니다.
소스 코드 관리자에 결과 표시
Snyk이 제출한 풀 리퀘스트에 남긴 보안 리뷰와 노트를 활용합니다.
보안 문제에 대한 코드 변경 테스트
코드베이스의 변경 사항을 보안 문제에 대해 테스트하여 코드가 오랫동안 안전한 상태를 유지할 수 있도록 합니다.
브랜치 테스트
새로운 브랜치에서 문제가 도입된 경우에만 실패하도록 변경을 구현하기 전후로 브랜치를 테스트합니다. 보안 문제가 있는 풀 리퀘스트의 합병을 방지합니다. Snyk은 모니터링 중인 저장소에 제출된 모든 풀 리퀘스트를 모니터링합니다.
테스트할 내용
SCM에서 PR 검사 결과를 분석하여 종속성 및 라이선스 문제를 테스트하기 위해 Snyk Open Source를 사용하고, 코드 보안을 위해 Snyk Code를 사용할 수 있습니다.
PR Checks 작동 방식
다음 다이어그램은 개발 흐름에서 Snyk이 PR을 체크하는 방법을 설명합니다.

PR checks는 다음과 같이 진행됩니다:
개발자가 Snyk와 통합된 SCM에서 풀 리퀘스트(PR)를 생성합니다.
웹훅이 SCM에서 Snyk로 트리거됩니다.
Snyk이 PR의 코드 변경을 자동으로 스캔하여 문제를 찾습니다.
Snyk이 PR에 보안 리뷰와 노트를 남깁니다.
개발자는 PR Checks 결과를 확인하고 코드를 병합하기 전에 식별된 문제를 수정할 수 있습니다.
PR Checks 결과가 SCM에 직접 통과 또는 실패로 나타나며, 보안 문제가 있는 PR이 병합되는 것을 방지합니다.
PR Checks 작업에 대한 자세한 내용은 다음 페이지를 참조하십시오:
Last updated