NuGet Uyarısı NU3042

Yalnızca Linux ve macOS üzerinde NuGet 6.6.0+

Aşağıdaki X.509 kök sertifikası, dosya yolundaki> sertifika paketinde <bulunmadığından güvenilmez. Daha fazla bilgi için nu3042 belgelerine bakın.
    Konu: <sertifika konusu>
    Parmak izi (SHA-256): <sertifika parmak izi>
    Sertifika (PEM):
<PEM ile kodlanmış sertifika>

Sorun

Kod imzalama veya zaman damgası oluşturma gibi uygun güvenilen kök sertifika paketinde bir kök sertifika bulunamadığından, imzalı paket doğrulaması başarısız olduğunda NU3042 uyarısı tetiklenir. Bu uyarı yalnızca windows üzerinde değil, imzalı paket doğrulaması etkinleştirildiğinde Linux ve macOS'ta tetiklenir. NU3042, nu3018 veya NU3028 ile birlikte olmalıdır.

Her .NET 7+ SDK sürümü, Microsoft Güvenilen Kök Programı'ndan alınan iki kök sertifika paketi içerir. Bir sertifika paketi kod imzalama için geçerli olan tüm güvenilen kökleri, diğeri ise zaman damgası için geçerli olan tüm güvenilen kökleri içerir. NuGet, imzalı paket doğrulaması etkinleştirildiğinde Linux ve macOS üzerinde bu sertifika paketlerini kullanır.

Linux'ta NuGet, .NET SDK'sının kod imzalama sertifika paketi yerine sistem genelinde bir kod imzalama sertifikası paketini tercih edecektir.

NU3042'nin kök nedeni büyük olasılıkla aşağıdakilerden biridir:

  • (Yalnızca Linux) Sistem genelinde kod imzalama sertifika paketi uyarıda başvuruda bulunılan kök sertifikayı içermiyor.
  • .NET SDK'sının sertifika paketleri güncel değil.

Daha fazla bilgi için bkz . NuGet imzalı paket doğrulaması.

Çözüm

Linux'ta, sertifikaya güveniyorsanız ve sistem genelinde bir kod imzalama sertifikası paketi kullanıyorsanız, kök sertifikayı pakete eklemeyi göz önünde bulundurun. Sistem genelinde güven verileceği için bu çözüm uygun olmayabilir.

.NET SDK'sının sertifika paketleri güncel değilse, .NET SDK'sının daha yeni bir sürümüne güncelleştirin.

Diğer her şey başarısız olursa, ortam değişkenini DOTNET_NUGET_SIGNATURE_VERIFICATION false olarak ayarlayarak imzalı paket doğrulamasını geri alın ve nuGet ekibiyle ilgili bir sorun açarak imzalı paket doğrulamanın platformunuzda nasıl geliştirilebileceğini önerin.

Daha fazla bilgi için bkz . NuGet imzalı paket doğrulaması.