오픈소스를 위한 .NET
지원되는 패키지 관리자, 기능, 프레임워크 및 라이브러리에 대한 자세한 내용은 .NET 페이지를 참조하십시오.
오픈소스용 지원되는 .NET 버전
오픈소스용 .NET은 다음을 지원합니다:
.NET 버전 6, 7, 8, 9 및 10
.NET Framework 버전 4.* (SDK 스타일 프로젝트 형식을 사용하는 경우)
오픈소스 및 라이선싱
다음은 NuGet 및 Paket에 대한 Snyk 오픈소스 지원 요약입니다.
Snyk은 버전 속성이 누락된 PackageReference 항목을 지원하지 않습니다. 프로젝트에 이 속성이 누락된 경우, Snyk은 해당 프로젝트에 대해 풀 리퀘스트(PR)를 열지 못할 수 있습니다. 이 문제를 해결하려면 모든 PackageReference 항목에 버전이 추가되었는지 확인하십시오.
Snyk CLI 및 .NET용 Snyk
NuGet과 함께 사용할 snyk test 옵션에 대한 정보는 Test 도움말의 NuGet 프로젝트용 옵션을 참조하십시오.
snyk monitor 옵션은 Monitor 도움말의 NuGet 프로젝트용 옵션을 참조하십시오.
NuGet
스캔을 위해서는 project.assets.json 파일이 필요합니다. 프로젝트 파일은 더욱 결정론적인 project.assets.json 해결을 위해 NuGet 종속성 잠금(locking dependencies)과 결합될 수 있습니다.
project.assets.json으로 해결되는 지원되는 프로젝트 파일의 예는 다음과 같습니다:
*.csproj
*.vbproj
*.fsproj
필요한 경우, .NET 프로젝트에서 dotnet restore를 실행하여 종속성을 복원하고 이전 명령을 사용하여 obj/project.assets.json이 생성되었는지 확인하십시오. 그런 다음 snyk test를 실행합니다.
먼저 종속성을 복원하지 않고 snyk test를 실행할 수도 있지만, 이 경우 취약점 결과의 정확도가 떨어질 수 있습니다.
project.json 지원
project.json 파일이 지원되지만, Microsoft에서는 더 이상 사용을 권장하지 않습니다.
packages.config 지원
nuget install -OutputDirectory packages를 실행하여 종속성을packages폴더에 설치합니다.이전 명령에 의해
packages디렉토리가 생성되었는지 확인하십시오.snyk test를 실행합니다.
패키지로 해결되는 지원되는 프로젝트 파일의 예로는 packages.config 파일이 있습니다.
Paket
Snyk CLI에서 Paket을 사용하려면 다음 단계를 따르십시오:
paket.lock파일이paket.dependencies파일과 함께 있는지 확인하십시오.snyk test를 실행합니다.
SCM 통합 및 .NET용 Snyk
Snyk은 SCM 통합에서 NuGet만 지원합니다.
Snyk이 지원하는 SCM 통합 중 하나에서 .NET 프로젝트를 가져옵니다.
프로젝트를 가져오면 Snyk은 지원되는 매니페스트 파일을 기반으로 프로젝트를 분석한 다음 종속성 트리를 빌드하고 Snyk 웹 UI에 표시합니다.
Snyk 웹 UI를 사용하여 다음을 수행할 수 있습니다:
빌드 종속성을 포함하여 전체 프로젝트를 스캔하거나 건너뜁니다.
언어 기본 설정을 업데이트합니다.
Snyk 웹 UI를 사용하여 .NET용 빌드 종속성 스캔을 활성화하려면 다음 단계를 따르십시오:
계정에 로그인하고 관리하려는 관련 그룹 및 조직으로 이동합니다.
Settings로 이동하여 .NET 설정을 선택합니다.
모든 개발 종속성을 스캔하려면 Scan build dependencies가 선택되어 있는지 확인하십시오.
가져올 NuGet 프로젝트를 선택하면 Snyk은 다음 매니페스트 파일을 기반으로 종속성 트리를 빌드합니다:
.NET Core의 경우, *.proj 파일
.NET Framework의 경우, *.proj 파일 및 packages.config
지원되는 프로젝트 파일의 예는 다음과 같습니다:
*.csproj
*.vbproj
*.fsproj
.NET 프로젝트는 서로 다른 프레임워크를 사용할 수 있습니다. Snyk은 각 프레임워크에 대해 별도의 종속성 목록을 생성하여 각 프레임워크를 고유한 Snyk 프로젝트로 표시합니다. 이 구성을 통해 특정 종속성이 필요한 이유를 이해하고 문제 해결 계획을 더 쉽게 세울 수 있습니다.
.NET 취약점 수정
Snyk이 프로젝트 내의 오픈소스 취약점을 수정하는 데 어떻게 도움이 되는지 일반적인 내용을 이해하려면 취약점 수정 페이지를 참조하십시오.
NuGet을 사용하여 프로젝트 종속성을 관리하고 PackageReference 또는 packages.config를 사용하는 경우, 실제 수정 사항이 있다면 Snyk은 매니페스트 파일에서 종속성 버전을 자동으로 업데이트할 수 있습니다. 그런 다음 수정 사항을 검토하고 머지(merge)할 수 있습니다.
Last updated