sign コマンド (NuGet CLI)

適用対象: パッケージの作成 • サポートされているバージョン: 4.6 以降

最初の引数と一致するすべてのパッケージに、証明書を使用して署名を行います。 秘密キーを含む証明書は、ファイルから、または証明書ストアにインストールされている証明書から、サブジェクト名またはサムプリントを指定することで取得できます。

Note

パッケージ署名は .NET Core 内、Mono の下、または Windows 以外のプラットフォーム上では、まだサポートされていません。

使用方法

nuget sign <package(s)> [options]

<package(s)> は 1 つ以上の .nupkg ファイルです。

[オプション]

  • -CertificateFingerprint

    ローカル証明書ストアで証明書を検索するために使用されるフィンガープリントを指定します。

    NuGet.exe 6.12 以降では、このオプションを使用して、証明書の SHA-1、SHA-256、SHA-384、または SHA-512 フィンガープリントを指定できます。 ただし、SHA-1 証明書フィンガープリントが使用されると、セキュリティで保護されなくなるため、NU3043 警告が発生します。

    以前のすべてのバージョンの NuGet.exe は、SHA-1 証明書フィンガープリントのみを引き続き受け入れます。

  • -CertificatePassword

    必要に応じて、証明書のパスワードを指定します。 証明書がパスワード保護であるものの、パスワードの指定が行われていない場合は、-NonInteractive オプションが渡されない限り、コマンドは実行時にパスワードの入力を求めます。

  • -CertificatePath

    パッケージの署名に使用する証明書へのファイル パスを指定します。

  • -CertificateStoreLocation

    証明書の検索に使用する X.509 証明書ストアの名前を指定します。 デフォルト値は「CurrentUser」です。これは、現在のユーザーによって使用される X.509 証明書ストアです。 -CertificateSubjectName または -CertificateFingerprint オプションで証明書を指定する場合は、このオプションを使用する必要があります。

  • -CertificateStoreName

    証明書の検索に使用する X.509 証明書ストアの名前を指定します。 デフォルト値は「My」です。これは、個人用証明書の X.509 証明書ストアです。 -CertificateSubjectName または -CertificateFingerprint オプションで証明書を指定する場合は、このオプションを使用する必要があります。

  • -CertificateSubjectName

    ローカル証明書ストアで証明書を検索するために使用する証明書のサブジェクト名を指定します。 検索では、指定された値を使用して、大文字と小文字を区別しない文字列の比較を行います。その他のサブジェクトの値に関係なく、その文字列を含むサブジェクト名を持つすべての証明書が検索されます。 証明書ストアは、-CertificateStoreName-CertificateStoreLocation オプションで指定できます。

  • -ConfigFile

    適用する NuGet 構成ファイル。 指定しない場合は、%AppData%\NuGet\NuGet.Config (Windows)、~/.nuget/NuGet/NuGet.Config または ~/.config/NuGet/NuGet.Config (Mac/Linux) が使用されます。

  • -ForceEnglishOutput

    インバリアントな英語ベースのカルチャを使用して、nuget.exe の実行を強制します。

  • -HashAlgorithm

    パッケージの署名に使用するハッシュ アルゴリズム。 既定値は SHA256 です。 使用可能な値は SHA256、SHA384、SHA512 です。

  • -?|-help

    コマンドのヘルプ情報を表示します。

  • -NonInteractive

    ユーザーによる入力や確認のプロンプトを表示しません。

  • -OutputDirectory

    署名済みパッケージの保存先となるディレクトリを指定します。 既定では、元のパッケージが署名済みパッケージによって上書きされます。

  • -Overwrite

    現在の署名を上書きする必要があるばあいに切り替えます。 既定では、パッケージに既に署名がある場合、コマンドは失敗します。

  • -Timestamper

    RFC 3161 タイムスタンプ サーバーの URL。

  • -TimestampHashAlgorithm

    RFC 3161 タイムスタンプ サーバーで使用するハッシュ アルゴリズム。 既定値は SHA256 です。

  • -Verbosity [normal|quiet|detailed]

    normal (デフォルト)、quiet、あるいは detailed の出力に表示される詳細の量を指定します。

nuget sign MyPackage.nupkg -CertificatePath .\..\certificate.pfx -Timestamper http://timestamp.test

nuget sign .\..\MyPackage.nupkg -CertificateStoreLocation CurrentUser -CertificateStoreName My -CertificateSubjectName 'subject name' -Timestamper http://timestamp.test -OutputDirectory .\..\Signed