dotnet nuget 信任

本文适用于:✔️ .NET 6 SDK 及更高版本

Name

dotnet nuget trust - 获取或设置 NuGet 配置的受信任签名者。

概要

dotnet nuget trust [command] [Options]

dotnet nuget trust -h|--help

Description

dotnet nuget trust 命令管理受信任的签名者。 默认情况下,NuGet 接受所有作者和存储库。 这些命令允许你仅指定将接受其签名的特定签名者子集,同时拒绝所有其他签名。 有关详细信息,请参阅 通用 NuGet 配置。 有关 nuget.config 架构外观的详细信息,请参阅 NuGet 配置文件引用

注释

此命令需要一个证书根存储,该存储对代码签名和时间戳都有效。 此外,作系统和 .NET SDK 的某些组合可能不支持此命令。 有关详细信息,请参阅 NuGet 已签名的包验证

选项

  • -?|-h|--help输出有关如何使用命令的说明。

指令

如果未指定任何命令,该命令将默认为 list

list

列出配置中的所有受信任登录者。 此选项将包括每个签名者的所有证书(带有指纹和指纹算法)。 如果证书具有前面的 [U],则表示证书条目已将 allowUntrustedRoot 设置为 true。

概要:

dotnet nuget trust list [--configfile <PATH>] [-h|--help] [-v, --verbosity <LEVEL>]

选项:

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

sync

删除当前证书列表,并将其替换为存储库中的 up-to日期列表。

概要

dotnet nuget trust sync <NAME> [--configfile <PATH>] [-h|--help] [-v, --verbosity <LEVEL>]

Arguments

  • NAME

    要同步的现有受信任签名者的名称。

选项:

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

remove

删除与给定名称匹配的任何受信任签名者。

概要

dotnet nuget trust remove <NAME> [--configfile <PATH>] [-h|--help] [-v, --verbosity <LEVEL>]

Arguments

  • NAME

    要删除的现有受信任签名者的名称。

选项:

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

author

根据包的作者签名添加具有给定名称的受信任签名者。

概要

dotnet nuget trust author <NAME> <PACKAGE> [--allow-untrusted-root] [--configfile <PATH>] [-h|--help] [-v, --verbosity <LEVEL>]

Arguments

  • NAME

    要添加的受信任签名者的名称。 如果 NAME 配置中已存在,则会追加签名。

  • PACKAGE

    给定 PACKAGE 应是已签名 .nupkg 文件的本地路径。

选项:

  • --allow-untrusted-root

    指定是否应允许受信任的签名者的证书链接到不受信任的根。 不建议这样做。

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

repository

根据已签名包的存储库签名或计数器,添加具有给定名称的受信任签名者。

概要

dotnet nuget trust repository <NAME> <PACKAGE> [--allow-untrusted-root] [--configfile <PATH>] [-h|--help] [--owners <LIST>] [-v, --verbosity <LEVEL>]

Arguments

  • NAME

    要添加的受信任签名者的名称。 如果 NAME 配置中已存在,则会追加签名。

  • PACKAGE

    给定 PACKAGE 应是已签名 .nupkg 文件的本地路径。

选项:

  • --allow-untrusted-root

    指定是否应允许受信任的签名者的证书链接到不受信任的根。 不建议这样做。

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • --owners <LIST>

    以分号分隔的受信任所有者列表,以进一步限制存储库的信任。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

certificate

根据证书指纹添加具有给定名称的受信任签名者。

概要

dotnet nuget trust certificate <NAME> <FINGERPRINT> [--algorithm <ALGORITHM>] [--allow-untrusted-root] [--configfile <PATH>] [-h|--help] [-v, --verbosity <LEVEL>]

Arguments

  • NAME

    要添加的受信任签名者的名称。 如果已存在具有给定名称的受信任签名者,则会将该证书项添加到该签名者。 否则,使用给定证书信息中的证书项创建受信任的作者。

  • FINGERPRINT

    证书的指纹。

选项:

  • --algorithm <ALGORITHM>

    指定用于计算证书指纹的哈希算法。 默认为 SHA256。 支持的值是 SHA256、SHA384 和 SHA512。

  • --allow-untrusted-root

    指定是否应允许受信任的签名者的证书链接到不受信任的根。 不建议这样做。

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

source

基于给定的包源添加受信任的签名者。

概要

dotnet nuget trust source <NAME> [--configfile <PATH>] [-h|--help] [--owners <LIST>] [--source-url] [-v, --verbosity <LEVEL>]

Arguments

  • NAME

    要添加的受信任签名者的名称。 如果仅 <NAME> 提供不带 --<source-url>名称的包源,则会将 NuGet 配置文件中的包源添加到受信任的列表中。 如果 <NAME> 配置中已存在,则会将包源追加到该配置中。

选项:

  • --configfile <FILE>

    要使用的 NuGet 配置文件 (nuget.config)。 如果指定,则只使用此文件中的设置。 如果不指定,将使用当前目录中的配置文件的层次结构。 有关详细信息,请参阅 常见 NuGet 配置

  • -?|-h|--help

    打印出有关如何使用命令的说明。

  • --owners <LIST>

    以分号分隔的受信任所有者列表,以进一步限制存储库的信任。

  • --source-url

    如果提供 a source-url ,则它必须是 v3 包源 URL(例如 https://api.nuget.org/v3/index.json)。 不支持其他包源类型。

  • -v|--verbosity <LEVEL>

    设置命令的详细级别。 允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 默认值为 minimal。 有关详细信息,请参阅 LoggerVerbosity

例子

  • 列出受信任的签名者:

    dotnet nuget trust list
    
  • 在指定的 nuget.config 文件中信任源 NuGet

    dotnet nuget trust source NuGet --configfile ..\nuget.config
    
  • 信任签名的 nupkg 包文件 foo.nupkg 的作者:

    dotnet nuget trust author PackageAuthor .\foo.nupkg
    
  • 信任已签名的 nupkg 包文件 foo.nupkg 的存储库:

    dotnet nuget trust repository PackageRepository .\foo.nupkg
    
  • 使用其 SHA256 指纹信任包签名证书:

      dotnet nuget trust certificate MyCert  F99EC8CDCE5642B380296A19E22FA8EB3AEF1C70079541A2B3D6E4A93F5E1AFD --algorithm SHA256
    
  • 信任所有者 Nuget 和存储库https://api.nuget.org/v3/index.json

      dotnet nuget trust source NuGetTrust --source-url https://api.nuget.org/v3/index.json --owners "Nuget;Microsoft"
    
  • 从指定的 nuget.config 文件中删除名为 NuGet 的受信任签名者:

      dotnet nuget trust remove NuGet --configfile ..\nuget.config