Поделиться через


Команда dotnet nuget verify

Эта статья относится к: ✔️ пакету SDK для .NET 6 и более поздних версий

Name

dotnet nuget verify — проверяет подписанный пакет NuGet.

Synopsis

dotnet nuget verify [<package-path(s)>]
    [--all]
    [--certificate-fingerprint <FINGERPRINT>]
    [-v|--verbosity <LEVEL>]
    [--configfile <FILE>]

dotnet nuget verify -h|--help

Description

Команда dotnet nuget verify проверяет подписанный пакет NuGet. В .NET 10 и более поздних версиях команда также выводит хэш содержимого пакета, что может быть полезно для исследования ошибок проверки файла блокировки.

Note

Для этой команды требуется корневое хранилище сертификатов, допустимое как для подписывания кода, так и метки времени. Кроме того, эта команда может не поддерживаться в некоторых сочетаниях операционной системы и пакета SDK для .NET. Дополнительные сведения см. в статье о проверке подписанного пакета NuGet.

Arguments

  • package-path(s)

    Указывает путь к файлу для проверяемых пакетов. Для проверки нескольких пакетов можно передать несколько аргументов позиции.

Options

  • --all

    Указывает, что все возможные проверки должны выполняться в пакетах. По умолчанию проверяется только signatures проверка.

Note

Эта команда в настоящее время поддерживает только signature проверку.

  • --certificate-fingerprint <FINGERPRINT>

    Убедитесь, что сертификат подписи соответствует одному из указанных SHA256 отпечатков пальцев. Этот параметр можно предоставить несколько раз, чтобы предоставить несколько отпечатков пальцев.

  • -v|--verbosity <LEVEL>

    Задает уровень детализации команды. Допустимые значения: q[uiet], m[inimal], n[ormal], d[etailed] и diag[nostic]. Значение по умолчанию — minimal. Дополнительные сведения см. в разделе LoggerVerbosity.

    В следующей таблице показано, что отображается для каждого уровня детализации.

    q[uiet] m[inimal] n[ormal] d[etailed] diag[nostic]
    Certificate chain Information ✔️ ✔️
    Path to package being verified ✔️ ✔️ ✔️
    Hashing algorithm used for signature ✔️ ✔️ ✔️
    Author/Repository Certificate -> SHA1 hash ✔️ ✔️ ✔️
    Author/Repository Certificate -> Issued By ✔️ ✔️ ✔️
    Timestamp Certificate -> Issued By ✔️ ✔️ ✔️
    Timestamp Certificate -> SHA-256 hash ✔️ ✔️ ✔️
    Timestamp Certificate -> Validity period ✔️ ✔️ ✔️
    Timestamp Certificate -> SHA1 hash ✔️ ✔️ ✔️
    Timestamp Certificate -> Subject name ✔️ ✔️ ✔️
    Author/Repository Certificate -> Subject name ✔️ ✔️ ✔️ ✔️
    Author/Repository Certificate -> SHA-256 hash ✔️ ✔️ ✔️ ✔️
    Author/Repository Certificate -> Validity period ✔️ ✔️ ✔️ ✔️
    Author/Repository Certificate -> Service index URL (If applicable) ✔️ ✔️ ✔️ ✔️
    Package name being verified ✔️ ✔️ ✔️ ✔️
    Type of signature (author or repository) ✔️ ✔️ ✔️ ✔️

    ❌ указывает сведения, которые не отображаются. ✔️ указывает сведения, отображаемые.

  • --configfile <FILE>

    Файл конфигурации NuGet (nuget.config), который будет использоваться. Если этот параметр указан, будут использоваться только параметры из этого файла. Если не указано, будет использоваться иерархия файлов конфигурации из текущего каталога. Дополнительные сведения см. в статье Распространенные конфигурации NuGet.

  • -?|-h|--help

    Выводит описание использования команды.

Examples

  • Проверьте foo.nupkg:

    dotnet nuget verify foo.nupkg
    
  • Проверьте несколько пакетов NuGet — foo.nupkg и все Nupkg-файлы в указанном каталоге:

    dotnet nuget verify foo.nupkg c:\mydir\*.nupkg
    
  • Убедитесь, что подпись foo.nupkg соответствует указанному отпечатку сертификата:

    dotnet nuget verify foo.nupkg --certificate-fingerprint CE40881FF5F0AD3E58965DA20A9F571EF1651A56933748E1BF1C99E537C4E039
    
  • Убедитесь, что подпись foo.nupkg соответствует одному из указанных отпечатков сертификатов:

    dotnet nuget verify foo.nupkg --certificate-fingerprint CE40881FF5F0AD3E58965DA20A9F571EF1651A56933748E1BF1C99E537C4E039 --certificate-fingerprint EC10992GG5F0AD3E58965DA20A9F571EF1651A56933748E1BF1C99E537C4E027
    
  • Проверьте подпись foo.nupkg с помощью параметров (packagesources и trustedSigners) только из указанного файла nuget.config :

    dotnet nuget verify foo.nupkg --configfile ..\Settings\nuget.config