TeamCity 통합 작동 방식

Snyk 플러그인을 사용하여 TeamCity 프로젝트에서 코드를 취약점에 대해 지속적으로 테스트하고 모니터링하며, 프로젝트와 관련된 새롭게 공개된 취약점이 발표될 때 빌드를 중단하고 구성에 따라 관련 알림을 수신할 수 있습니다.

다음은 프로세스의 단계입니다:

  1. TeamCity 계정 관리자가 설치를 위해 Snyk 플러그인을 선택합니다.

  2. TeamCity가 플러그인을 플러그인 디렉토리에 서버에 설치합니다.

  3. 관리자가 플러그인을 활성화합니다.

  4. 사용자는 프로젝트를 생성하거나 기존 프로젝트를 업데이트하여 Snyk Security를 빌드 단계로 추가합니다.

  5. 사용자는 빌드를 구성하며, Snyk Security 단계(빌드에서 구성한 API 토큰, 정책 변경 등)를 구성합니다.

  6. Snyk은 빌드에서 구성한 API 토큰을 사용하여 계정을 인증합니다.

  7. 사용자가 빌드를 실행합니다.

  8. 빌드 중 취약점 검사 전에, 정책 구성에 따라 Snyk 설치가 필요한 경우 백그라운드에서 검증 및 업데이트됩니다.

  9. Snyk은 프로젝트의 매니페스트 파일을 분석하여 프로젝트 유형을 자동으로 감지하고 직접 및 간접 종속성을 찾아 Snyk 취약점 데이터베이스를 통해 프로젝트의 취약성을 테스트합니다.

  10. Snyk Security Report 탭에는 TeamCity의 빌드 세부 정보에서 테스트 결과가 표시됩니다. 결과에는 알려진 문제의 수와 식별된 종속성 경로의 수가 표시됩니다.

  11. 사용자가 이 프로젝트에 대해 빌드 시 프로젝트 모니터링 구성 설정을 선택하지 않았다면:

    1. Snyk은 모든 취약점 결과와 세부 정보를 TeamCity의 Snyk Security Report 탭에 표시합니다.

    2. 프로젝트에서 식별된 모든 취약점에 할당된 심각도에 대한 임계값이 지정된 경우, TeamCity는 빌드를 중단합니다. 그렇지 않으면, TeamCity는 빌드를 완료(성공 또는 실패)할 수 있으며 Snyk 활동이 종료됩니다.

  12. 사용자가 빌드 시 프로젝트 모니터링 옵션을 구성한 경우, Snyk은 snyk monitor 명령을 실행하고 여기에 설명된 단계를 진행합니다.

    1. Snyk은 프로젝트의 스냅샷을 가져오고, 프로젝트의 매니페스트 파일을 분석하여 직접 및 간접 종속성을 찾고, 프로젝트를 Snyk 취약점 데이터베이스에 대해 테스트합니다.

    2. Snyk은 스냅샷을 Snyk UI에 푸시합니다. 스냅샷에는 프로젝트 세부 정보와 종속성 계층 구조, 취약점 결과 및 수정 조언이 표시됩니다.

    3. 프로젝트에서 식별된 모든 취약성에 할당된 심각도에 대한 임계값이 지정된 경우, TeamCity는 빌드를 중단합니다.

    4. 스냅샷이 Snyk UI에 푸시되면, 프로젝트를 계속 모니터링하고 새로운 취약점이 공개되면 구성에 따라 이메일이나 Slack을 통해 알림을 전달하여 즉시 조치를 취할 수 있습니다.

Snyk 단계와 함께 빌드를 구성하는 방법에 대한 정보는 Team City integration: use Snyk in your build를 참조하십시오.

Last updated