파이프라인에 Snyk 보안 작업 추가

파이프라인에 Snyk 보안 작업을 추가하기 위한 전제 조건

  • 테스트하려는 코드에 대한 리포지토리 내에 파이프라인이 있는지 확인하십시오.

  • Azure Repos 마법사로 파이프라인을 만든 경우 이 파일의 이름은 azure-pipelines.yml입니다.

  • 이 리포지토리에 여러 서비스 연결이 있는 경우 Snyk 관리자에게 파이프라인에 사용할 연결을 문의하십시오.

  • 컨테이너를 테스트할 때 추가 기본 이미지 데이터를 사용하기 위해 Dockerfile을 추가하려면 이미지가 빌드되었는지 확인하십시오.

파이프라인에 Snyk 보안 작업을 추가하기 위한 요구 사항

이 확장 프로그램을 사용하려면 빌드 에이전트에 Node.js 및 npm이 설치되어 있어야 합니다. 이는 모든 Microsoft 호스팅 빌드 에이전트에서 기본적으로 사용할 수 있습니다. 그러나 자체 호스팅 빌드 에이전트를 사용하는 경우 Node.js 및 npm을 명시적으로 활성화하고 PATHarrow-up-right에 있는지 확인해야 할 수 있습니다. 이는 파이프라인에 Snyk 보안 스캔 작업을 추가하기 전에 Microsoft의 NodeTool 작업arrow-up-right을 사용하여 수행할 수 있습니다.

파이프라인에 Snyk 보안 작업을 추가하는 단계

  1. 파이프라인을 만들거나 기존 파이프라인을 편집할 때 Snyk 보안 스캔 작업을 추가합니다. Azure Pipelines 설명서arrow-up-right를 참조하십시오.

  2. Azure에서 취약점을 스캔하려는 파이프라인에 액세스합니다. 편집을 위해 열고 Snyk 작업을 삽입하려는 지점 바로 앞에 빌드 단계가 포함되어 있는지 확인합니다. 이는 필수는 아니지만 프로젝트 전체의 일관성을 위한 모범 사례로 간주됩니다.

  3. 어시스턴트를 열고 Snyk 보안 스캔 작업을 검색한 다음 다음 화면 이미지와 같이 클릭합니다. 구성 패널이 어시스턴트 위에 열립니다.

    Snyk 보안 스캔 작업 검색
  4. 구성의 필드를 완료합니다.

    1. 매개변수에 대한 자세한 내용은 Snyk 보안 스캔 작업 매개변수 및 값 페이지에서 확인하십시오.

    2. Snyk에서 문제를 발견하면 빌드 실패 옵션을 선택하면 빌드가 실패할 때 Snyk 작업에 의해 파이프라인 작업이 실패합니다.

    3. Snyk에서 문제를 발견하면 빌드 실패 옵션을 선택 취소하면 Snyk 작업은 취약점을 테스트하지만 파이프라인 작업이 실패하지는 않습니다.

    4. 컨테이너 이미지를 테스트할 때 dockerfilePath 속성으로 Dockerfile 경로를 지정하여 기본 이미지의 문제에 대한 추가 정보를 받을 수 있습니다.

    5. 컨테이너를 테스트할 때 추가 기본 이미지 데이터를 위해 Dockerfile을 추가하려면 이미지가 빌드되었는지 확인하십시오.

  5. 파이프라인 내부에 커서를 놓고 npm publish 또는 docker push와 같은 배포 단계 앞에 있는지 확인합니다.

    1. 파이프라인 내에 여러 Snyk 보안 스캔 작업 인스턴스를 가질 수 있습니다.

    2. 예를 들어 테스트하려는 여러 프로젝트 매니페스트 파일이 있거나 애플리케이션과 컨테이너 이미지를 모두 테스트하려는 경우 유용할 수 있습니다.

  6. 구성 패널에서 추가를 클릭합니다. 작업은 다음과 같이 커서가 있던 파이프라인에 삽입됩니다.

       - task: SnykSecurityScan@1
         inputs:
           testType: 'app'
           monitorWhen: 'always'
           failOnIssues: true

작업이 파이프라인에 포함되면 파이프라인이 실행될 때마다 작업이 실행되고 결과가 Azure Pipelines 출력 보기에 나타납니다.

Azure pipelines output view

Snyk 작업이 빌드를 실패시키면 snyk test로 인해 빌드가 실패했음을 나타내는 오류 메시지가 결과에 나타납니다.

Last updated