풀 리퀘스트 검사 구성

circle-info

기능 가용성

Bitbucket Server 통합을 위한 PR 검사에는 Bitbucket Server 버전 7.4 이상 또는 Bitbucket Data Center 버전 8 이상이 필요합니다.

Broker 연결을 사용하는 경우 Snyk Broker 버전 4.206 이상이 필요합니다.

자동 PR 검사를 위한 필수 조건

오픈 소스 및 라이선스 이슈와 코드 보안을 확인하려면 다음 사항이 설정되어 있는지 확인하십시오.

  • 모든 통합 설정에 액세스할 수 있도록 그룹 관리자(Group Admin) 역할이 있어야 합니다. 멤버 역할을 참조하십시오.

  • Git 리포지토리 통합을 설정해야 합니다. 도움이 필요하면 Snyk Learn 과정 소스 코드 관리 도구 구성arrow-up-right을 참조하십시오.

  • 작동하는 Git 리포지토리를 갖기 위해 프로젝트를 가져옵니다(Import).

  • 코드 보안(Snyk Code)의 경우, 위의 모든 조건을 충족한 후 Snyk 담당자에게 문의하여 기능을 활성화하십시오.

circle-info

PR 검사는 SCM의 웹훅에 의존합니다. 통합 범위에는 웹훅을 생성할 수 있는 기능이 포함되어 있어야 합니다.

PR 검사는 조직의 테스트 횟수 내에서 테스트로 계산되며, 여기에는 열려 있는 풀 리퀘스트의 새로운 커밋에 대한 자동 검사가 포함됩니다. 테스트로 계산되는 항목을 참조하십시오. 허용되는 테스트 횟수는 가격 플랜에 의해 결정됩니다.

지원되는 Snyk 스캔 유형

다음과 같이 PR 검사를 통해 변경된 코드를 분석할 수 있습니다.

  • Snyk Code: 소스 코드 변경으로 인해 지정된 임계값을 초과하는 취약점이 발생하는지 확인합니다. 새로운 취약점이 있는지 확인하기 위해 리포지토리에 대한 전체 스캔이 수행됩니다.

  • Snyk Open Source: Snyk은 종속성 매니페스트 또는 지원되는 파일을 분석하여 심각도 초과와 같은 임계값을 충족하는 알려진 보안 취약점을 확인하거나 수정 가능 여부를 확인합니다.

  • 오픈 소스 라이선스 검사: Snyk은 구성된 정책에 따라 패키지 라이선스의 라이선스 정책 위반 여부를 검증합니다.

PR 검사는 Snyk Code 및 Open Source 엔진에서 지원하는 모든 프로그래밍 언어와 프레임워크도 지원합니다. 자세한 내용은 지원되는 언어, 패키지 관리자 및 프레임워크를 참조하십시오.

PR 검사 구성 작동 방식

PR 검사는 Snyk 조직의 통합 수준에서 구성하거나 조직의 특정 Snyk 프로젝트에 대해 구성할 수 있습니다.

  • 조직 내에 여러 리포지토리 통합을 가질 수 있지만, 이 기능은 PR 검사가 구성된 통합에 대해서만 작동합니다.

  • 프로젝트 수준에서 설정은 기본적으로 통합에서 상속되지만, 사용자 정의 설정을 구성할 수 있습니다.

통합 수준에서 PR 검사 구성

GitHub 리포지토리와 같이 이미 Snyk과 통합된 특정 Git 리포지토리에 대해 PR 검사를 구성합니다.

구성 설정은 해당 조직의 모든 프로젝트에 적용됩니다. 사용자 정의 설정이 있는 프로젝트로 구성을 확장할 수도 있습니다.

  1. Snyk 웹 UI에서 설정(Settings) > **통합(Integrations)**으로 이동하고 연결된 소스 코드 관리 도구를 선택하여 설정 구성을 엽니다.

  2. 코드 이슈를 확인하려면 다음 변경 사항을 구성하고 저장하십시오.

"수정 가능한 이슈가 발견된 경우에만 실패(Only fail when the issues found have a fix available)"로 구성된 PR 검사는 Snyk FixPR 지원에 의존하므로, FixPR 검사를 지원하지 않는 언어의 프로젝트에 대해서는 경고를 표시하지 않습니다.

circle-info

PR 테스트는 GitHub의 브랜치 보호 규칙과 같이 소스 제어 관리 플랫폼 내에서 선택 사항 또는 차단 사항으로 구성됩니다. 이슈 방지에 대해 자세히 알아보려면 6단계: 방지 단계 출시를 방문하십시오.

코드 이슈 분석을 위한 PR 검사 설정.
코드 이슈 분석을 위한 PR 검사 설정
circle-info

코드 분석 섹션이 보이지 않는 경우, 사용자에게 그룹 관리자 역할이 할당되어 있고 Snyk Code에 대해 기능이 활성화되어 있는지 확인하십시오. 필수 조건을 참조하십시오.

  1. 오픈 소스 및 라이선스 이슈를 확인하려면 다음 변경 사항을 구성하고 저장하십시오.

활성화하면 PR이 Snyk에 의해 수정 가능한 새로운 취약점을 도입할 때 PR 검사가 실패하게 됩니다. Snyk이 취약점을 수정할 수 없는 경우 새로운 취약점이 도입되더라도 PR 검사가 실패하지 않습니다.

오픈 소스 및 라이선스 이슈 분석을 위한 풀 리퀘스트 검사 설정.
오픈 소스 및 라이선스 이슈 분석을 위한 PR 검사 설정
  1. **저장(Save)**을 클릭하여 변경 사항을 저장하거나, 저장 드롭다운을 선택하고 **재정의된 모든 프로젝트에 변경 사항 적용(Apply changes to all overridden Projects)**을 클릭하여 현재 구성을 사용자 정의 설정이 있는 프로젝트로 확장합니다. 자세한 내용은 프로젝트 수준에서 PR 검사 구성을 참조하십시오.

프로젝트 수준에서 PR 검사 구성

특정 프로젝트에 대해서만 작동하도록 PR 검사를 구성할 수 있습니다.

  1. **프로젝트(Projects)**로 이동하여 프로젝트가 포함된 타겟을 확장합니다.

  2. 프로젝트 이름을 클릭하여 엽니다. 프로젝트 유형에 따라 다음을 선택할 수 있습니다.

  • 오픈 소스 및 라이선스 이슈를 확인하려면 package.json을 선택합니다.

  • 코드의 보안 이슈를 확인하려면 **코드 분석(Code analysis)**을 선택합니다.

프로젝트 개요
프로젝트 개요
  1. **설정(Settings)**으로 이동합니다.

  2. 왼쪽에서 통합 도구를 선택합니다. 이 예시에서는 GitHub가 Snyk과 통합되었습니다.

  3. 프로젝트 유형에 따라 프로젝트 설정을 구성합니다.

chevron-right오픈 소스 및 라이선스 이슈에 대해 구성 (클릭하여 확장)hashtag
  1. **풀 리퀘스트를 위한 Snyk 테스트(Snyk test for pull request)**에서 **사용자 정의(Custom)**를 선택하여 설정을 구성합니다.

  2. 제안된 변경 사항에서 발견된 오픈 소스 및 라이선스 이슈가 지정된 심각도 임계값을 초과할 때 PR을 실패시키려면 옵션을 활성화합니다.

  3. 다음 설정을 구성합니다.

  1. **Snyk 풀 리퀘스트 설정 업데이트(Update Snyk pull request settings)**를 클릭하여 변경 사항을 저장합니다.

chevron-right코드 분석에 대해 구성 (클릭하여 확장)hashtag
  1. **풀 리퀘스트를 위한 Snyk Code(Snyk Code for pull request)**에서 **사용자 정의(Custom)**를 선택하여 설정을 구성합니다.

  2. 제안된 변경 사항에서 발견된 보안 이슈가 지정된 심각도 임계값을 초과할 때 PR을 실패시키려면 이 옵션을 활성화합니다.

  3. 다음 설정을 구성합니다.

  1. **Snyk 풀 리퀘스트 설정 업데이트(Update Snyk pull request settings)**를 클릭하여 변경 사항을 저장합니다.

Last updated