오픈 소스용 .NET

오픈 소스를 위한 .NET 지원

지원되는 패키지 관리자 및 기능에 대한 세부 정보는 .NET 세부 정보를 참조하십시오.

오픈 소스 및 라이선스

다음은 NuGet 및 Paket을 위한 Snyk 오픈 소스 지원을 요약한 것입니다.

패키지 관리자 기능
CLI 지원
SCM 지원
라이선스 스캔
고침 PR

✔︎

✔︎

✔︎

✔︎

✔︎

버전 속성이 없는 PackageReference를 Snyk이 지원하지 않습니다. 만약 프로젝트에 이 속성이 없다면, Snyk은 프로젝트를 위한 PR을 열지 못할 수 있습니다.

현재의 해결 방법은 모든 PackageReference에 버전을 추가하는 것입니다.

Nuget 패키지 관리자를 위한 Snyk 지원

스캔을 위해 project.assets.json 파일이 필요합니다. 프로젝트 파일은 더 결정적인 project.assets.json 해결을 위해 잠금 파일과 결합될 수 있습니다.

project.assets.json으로 해석되는 지원되는 프로젝트 파일의 예시는 다음과 같습니다:

  • *.csproj

  • *.vbproj

  • *.fsproj

필요하다면 .NET 프로젝트에서 의존성을 복원하려면 dotnet restore를 실행하고 이전 명령으로 생성된 obj/project.assets.json을 확인하십시오. 그런 다음 snyk test를 실행하십시오.

Snyk CLI 및 Snyk로 .NET 사용

NuGet과 함께 사용할 snyk test 옵션에 대한 정보는 테스트 도움말의 NuGet 프로젝트 옵션을 참조하십시오. snyk 모니터 옵션에 대한 정보는 모니터 도움말의 NuGet 프로젝트 옵션을 참조하십시오.

Snyk CLI를 사용하여 Paket을 사용하려면 paket.lock 파일이 함께 paket.dependencies 파일이 있는지 확인하십시오. 그런 다음 snyk test를 실행하십시오.

Git 리포지토리 및 .NET을 위한 Snyk

Snyk이 지원하는 Git 서비스 중 하나에서 .NET 프로젝트를 가져올 수 있습니다.

프로젝트를 가져온 후, Snyk은 해당 지원되는 매니페스트 파일을 기반으로 프로젝트를 분석하고 의존성 트리를 작성하여 다음과 같이 Snyk 웹 UI에서 표시합니다.

Snyk 웹 UI의 .NET 의존성 트리
Snyk 웹 UI의 .NET 의존성 트리

Snyk 웹 UI를 사용하여 Snyk을 구성하여 빌드 의존성을 포함한 전체 프로젝트를 스캔하거나 빌드 의존성을 건너뛸 수 있습니다.

당신의 언어 기본 설정을 업데이트할 수도 있습니다.

  1. 계정에 로그인하고 관리하려는 관련 그룹 및 조직으로 이동합니다.

  2. 설정으로 이동하고 .NET을 위한 설정을 선택합니다.

  3. 모든 개발 의존성을 스캔하려면 빌드 의존성 스캔이 선택되어 있는지 확인하십시오.

NuGet 프로젝트를 가져오기로 선택한 후, Snyk은은 다음 매니페스트 파일을 기반으로 의존성 트리를 작성합니다:

  • .NET Core의 경우 *.proj 파일

  • .NET Framework의 경우 *.proj 파일 및 packages.config

지원되는 프로젝트 파일의 예시는 다음과 같습니다:

  • *.csproj

  • *.vbproj

  • *.fsproj

.NET 프로젝트는 여러 타겟 프레임워크를 대상으로할 수 있습니다. Snyk은 각 타겟 프레임워크마다 별도의 의존성 트리를 생성하여 각각을 별도의 Snyk 프로젝트로 표시합니다. 이렇게 하면 왜 종속성이 사용되는지를 이해하고 고치는 전략을 평가하기가 좀 더 쉬워집니다.

Snyk은은 Paket을 위한 프로젝트 가져오기를 지원하지 않습니다.

packages.config로 관리되는 의존성

packages.config로 관리되는 의존성에는 두 가지 접근 방법이 있지만, 가장 정확한 결과를 얻는 권장 방법은 다음과 같습니다:

첫째, nuget install -OutputDirectory packages를 실행하여 의존성을 packages 폴더에 설치하고 이전 명령에 의해 packages 디렉토리가 생성되었는지 확인하십시오. 그런 다음 snyk test를 실행하십시오.

packages로 해석되는 지원되는 프로젝트 파일의 예시는 다음과 같습니다: packages.config

의존성을 사전에 설치하지 않고 snyk test를 실행할 수 있지만, 이 경우 보안 취약점 결과가 덜 정확해집니다.

다른 의존성과 함께 사용할 CLI 옵션

다른 지원에는 project.json도 포함됩니다 (더 이상 권장되지 않음, Microsoft 문서 참조).

의존성 트리를 작성하려면 Snyk이이 paket.dependenciespaket.lock 파일을 분석합니다.

.NET의 취약점 수정

Snyk이프로젝트 내의 오픈 소스 취약점을 수정하는 방법에 대한 일반적인 이해를 위해서 오픈 소스 취약점 수정을 참조하십시오.

기능 가용성 고치기 PR 기능은 Snyk SCM 통합에만 사용 가능합니다.

현재 NuGet을 사용하여 프로젝트 의존성을 관리하고 있다면, PackageReference 또는 packages.config를 사용 중이라면, 실제 고침이 가능한 경우 Snyk이 자동으로 매니페스트 파일에서 의존성 버전을 업데이트할 수 있습니다. 그 후 업데이트를 검토하고 병합할 수 있습니다.

Last updated