nuget.config
odkaz
Chování NuGet je řízeno nastavením v různých NuGet.Config
nebo nuget.config
souborech, jak je popsáno v běžných konfiguracích NuGet.
nuget.config
je soubor XML obsahující uzel nejvyšší úrovně <configuration>
, který pak obsahuje prvky oddílu popsané v tomto tématu. Každý oddíl obsahuje nula nebo více položek. Podívejte se na konfigurační soubor s příklady. Názvy nastavení nerozlišují malá a velká písmena a hodnoty můžou používat proměnné prostředí.
Tip
nuget.config
Přidejte soubor do kořenového adresáře úložiště projektu. To je považováno za osvědčený postup, protože podporuje opakovatelnost a zajišťuje, že různí uživatelé mají stejnou konfiguraci NuGet.
Možná budete muset nakonfigurovat clear
prvky tak, aby se nepoužádá žádná konfigurace specifická pro uživatele nebo počítač. Přečtěte si další informace o způsobu použití nastavení.
konfigurační oddíl
Obsahuje různá nastavení konfigurace, která lze nastavit pomocí nuget config
příkazu.
dependencyVersion
a repositoryPath
platí pouze pro projekty používající packages.config
. globalPackagesFolder
platí pouze pro projekty používající formát PackageReference.
Key | Hodnota |
---|---|
dependencyVersion (packages.config pouze) |
Výchozí DependencyVersion hodnota pro instalaci, obnovení a aktualizaci balíčku, pokud -DependencyVersion není přepínač zadán přímo. Tuto hodnotu používá také uživatelské rozhraní NuGet Správce balíčků. Hodnoty jsou Lowest , , HighestMinor HighestPatch , Highest . |
globalPackagesFolder | Umístění výchozí složky globálních balíčků. Výchozí hodnota je %userprofile%\.nuget\packages (Windows) nebo ~/.nuget/packages (Mac/Linux). Relativní cestu lze použít v souborech specifických pro nuget.config projekt. Toto nastavení je přepsáno proměnnou NUGET_PACKAGES prostředí, která má přednost. |
repositoryPath (packages.config pouze) |
Umístění, ve kterém se mají instalovat balíčky NuGet místo výchozí $(Solutiondir)/packages složky. Relativní cestu lze použít v souborech specifických pro nuget.config projekt. |
defaultPushSource | Identifikuje adresu URL nebo cestu ke zdroji balíčku, která by se měla použít jako výchozí, pokud nejsou nalezeny žádné jiné zdroje balíčků pro operaci. |
no_proxy http_proxy http_proxy.user http_proxy.password | Nastavení proxy serveru, které se má použít při připojování ke zdrojům balíčků; http_proxy by měla být ve formátu http://<username>:<password>@<domain> . Hesla jsou šifrovaná a nelze je přidat ručně. Hodnota no_proxy je čárkami oddělený seznam domén, které obejití proxy serveru. Pro tyto hodnoty můžete také použít proměnné prostředí http_proxy a no_proxy. Další podrobnosti najdete v tématu Nastavení proxy serveru NuGet (skolima.blogspot.com). |
maxHttpRequestsPerSource | Řídí maximální počet paralelních požadavků odesílaných z NuGetu do každého zdroje balíčků pro řešení závislostí balíčku a stahování. Výchozí hodnota dotnet.exe je Int32.MaxValue odvozena z HttpClientHandler.MaxConnectionsPerServer vlastnosti. Toto nastavení nemá žádný vliv na dotnet.exe Mac OS to, protože omezení je nastavené tak, aby 16 se zabránilo příliš velkému počtu otevřených souborů. Výchozí hodnota, na NuGet client tools které běží .NET Framework , například Visual Studio a nuget.exe je 64 zapnutá Windows a 1 zapnutá Mono . Výchozí hodnota pro Packages.config projekty stylu je nastavena na Environment.ProcessorCount . Konfigurace maxHttpRequestsPerSource vlastnosti na hodnotu menší než výchozí může mít vliv na výkon NuGetu. |
signatureValidationMode | Určuje režim ověřování použitý k ověření podpisů balíčku pro instalaci balíčku a obnovení. Hodnoty jsou accept , require . Výchozí hodnota accept je . |
Příklad:
<config>
<add key="dependencyVersion" value="Highest" />
<add key="globalPackagesFolder" value="c:\packages" />
<add key="repositoryPath" value="c:\installed_packages" />
<add key="http_proxy" value="http://company-squid:3128@contoso.com" />
<add key="signatureValidationMode" value="require" />
<add key="maxHttpRequestsPerSource" value="16" />
</config>
bindingRedirects section
Konfiguruje, jestli NuGet provádí automatické přesměrování vazeb při instalaci balíčku.
Key | Hodnota |
---|---|
skip | Logická hodnota označující, jestli se mají přeskakovat automatické přesměrování vazby. Výchozí hodnotou je hodnota false. |
Příklad:
<bindingRedirects>
<add key="skip" value="True" />
</bindingRedirects>
oddíl packageRestore
Řídí obnovení balíčku během sestavení.
Key | Hodnota |
---|---|
enabled | Logická hodnota označující, jestli NuGet může provést automatické obnovení. Proměnnou prostředí můžete také nastavit EnableNuGetPackageRestore s hodnotou True namísto nastavení tohoto klíče v konfiguračním souboru. |
automatická | Logická hodnota označující, jestli má NuGet kontrolovat chybějící balíčky během sestavení. |
Příklad:
<packageRestore>
<add key="enabled" value="true" />
<add key="automatic" value="true" />
</packageRestore>
část řešení
Určuje, jestli packages
je složka řešení součástí správy zdrojového kódu. Tato část funguje jenom v nuget.config
souborech ve složce řešení.
Key | Hodnota |
---|---|
disableSourceControlIntegration | Logická hodnota označující, jestli se má složka balíčků při práci se správou zdrojového kódu ignorovat. Výchozí hodnota je false. |
Příklad:
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
Oddíly zdroje balíčků
Funkce packageSources
, , packageSourceCredentials
, activePackageSource
trustedSigners
apikeys
disabledPackageSources
, a packageSourceMapping
všechny spolupracují na konfiguraci fungování NuGet s úložišti balíčků během operací instalace, obnovení a aktualizace.
Příkaz nuget sources
se obvykle používá ke správě těchto nastavení, s výjimkou apikeys
toho, který se spravuje pomocí nuget setapikey
příkazu a trustedSigners
který se spravuje pomocí nuget trusted-signers
příkazu.
Všimněte si, že zdrojová adresa URL pro nuget.org je https://api.nuget.org/v3/index.json
.
packageSources
Zobrazí seznam všech známých zdrojů balíčků. Pořadí je ignorováno během operací obnovení a s libovolným projektem pomocí formátu PackageReference. NuGet respektuje pořadí zdrojů pro operace instalace a aktualizace s projekty používajícími packages.config
.
Atribut XML | Účel |
---|---|
Klíč | (název pro přiřazení ke zdroji balíčku) |
Hodnota | Cesta nebo adresa URL zdroje balíčku. |
protocolVersion | Verze protokolu serveru NuGet, která se má použít. Aktuální verze je 3. Výchozí hodnota je verze 2, pokud neodkazuje na adresu URL zdroje balíčku končící .json (např. https://api.nuget.org/v3/index.json). Podporováno v NuGetu 3.0 nebo novějším. Další informace o protokolu verze 3 najdete v rozhraní API serveru NuGet. |
allowInsecureConnections | Pokud není zadána hodnota false nebo není zadána, NuGet vygeneruje upozornění, pokud zdroj používá místo https protokol http. Pokud máte jistotu, že komunikace s tímto zdrojem nikdy nebude ohrožena útoky na zachycení, můžete nastavit hodnotu na true a potlačit upozornění. Podporováno v NuGetu 6.8 nebo novější. |
disableTLSCertificateValidation | Tato vlastnost konfigurace umožňuje zakázat ověření certifikátu SSL/TLS pro váš server HTTPS. Pokud je nastavená hodnota true, server bude ignorovat všechny chyby související s certifikáty SSL/TLS, jako jsou certifikáty podepsané svým držitelem nebo certifikáty podepsané svým držitelem, a navázat připojení bez ověření. Podporováno v NuGetu 6.11 nebo novější. |
Příklad:
<packageSources>
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<add key="Contoso" value="https://contoso.com/packages/" />
<add key="http-source" value="http://httpsourcetrusted/" allowInsecureConnections="true" />
<add key="Invalid-certificate-https-source" value="https://httpsSourceTrusted/" disableTLSCertificateValidation="true" />
<add key="Test Source" value="c:\packages" />
</packageSources>
Poznámka:
Použijte zdroje balíčků, kterým důvěřujete.
Poznámka:
Při použití rozhraní příkazového řádku můžete vyjádřit RestoreSources
vlastnost MSBuild nebo--source
(.NET CLI) | -Source
(Rozhraní příkazového řádku NuGet) a přepsat definovanou <packageSources>
v souboru NuGet.config.
Tip
Pokud <clear />
je pro daný uzel přítomen, NuGet ignoruje dříve definované hodnoty konfigurace pro daný uzel. Přečtěte si další informace o způsobu použití nastavení.
auditSources
Zobrazí seznam všech známých zdrojů auditu, které bude audit NuGet používat během obnovení.
Pokud nejsou k dispozici žádné zdroje auditu, obnovení použije zdroje balíčků a potlačí NU1905.
auditSources
byla přidána do NuGetu 6.12.
Zdroje auditu podporují stejné atributy jako packageSources
(protocolVersion
, allowInsecureConnections
) a zdroje, které vyžadují ověřování, jsou nakonfigurovány packageSourceCredentials
stejným způsobem jako packageSources
.
Příklad:
<auditSources>
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</auditSources>
packageSourceCredentials
Ukládá uživatelská jména a hesla pro zdroje, obvykle zadané pomocí -username
přepínačů a -password
přepínačů nuget sources
. Hesla se ve výchozím nastavení šifrují, pokud -storepasswordincleartext
se tato možnost nepoužívá.
Volitelně lze pomocí přepínače zadat -validauthenticationtypes
platné typy ověřování.
Key | Hodnota |
---|---|
username | Uživatelské jméno zdroje ve formátu prostého textu. Poznámka: Proměnné prostředí lze použít pro lepší zabezpečení. |
Heslo | Šifrované heslo pro zdroj. Šifrovaná hesla jsou podporována jenom ve Windows a dešifrovat se dají jenom v případě použití na stejném počítači a prostřednictvím stejného uživatele jako původní šifrování. |
cleartextpassword | Nešifrované heslo pro zdroj. Poznámka: Proměnné prostředí lze použít pro lepší zabezpečení. |
validauthenticationtypes | Čárkami oddělený seznam platných typů ověřování pro tento zdroj. Tuto možnost nastavte, basic pokud server inzeruje protokol NTLM nebo Negotiate a vaše přihlašovací údaje musí být odeslány pomocí základního mechanismu, například při použití PAT s místním Serverem Azure DevOps. Mezi další platné hodnoty patří negotiate , kerberos , ntlm a digest , ale tyto hodnoty pravděpodobně nebudou užitečné. |
Upozorňující
Ukládání hesel ve formátu prostého textu se důrazně nedoporučuje. Upozorňujeme, že šifrovaná hesla jsou podporována pouze ve Windows. Kromě toho je možné je dešifrovat pouze v případě, že se používají na stejném počítači, a stejným uživatelem, který je původně zašifroval. Další informace o bezpečné správě přihlašovacích údajů najdete v osvědčených postupech zabezpečení pro využívání balíčků z privátních informačních kanálů.
Tip
Pokud se předá nešifrované heslo pro password
chybovou zprávu Parametr je nesprávný, dojde k chybě.
Příklad:
V konfiguračním souboru <packageSourceCredentials>
obsahuje element podřízené uzly pro každý použitelný název zdroje (mezery v názvu jsou nahrazeny _x0020_
). To znamená, že pro zdroje s názvem Contoso a Test Source obsahuje konfigurační soubor při použití šifrovaných hesel následující:
<packageSourceCredentials>
<Contoso>
<add key="Username" value="user@contoso.com" />
<add key="Password" value="..." />
</Contoso>
<Test_x0020_Source>
<add key="Username" value="user" />
<add key="Password" value="..." />
</Test_x0020_Source>
</packageSourceCredentials>
Kromě toho je možné zadat platné metody ověřování.
<packageSourceCredentials>
<Contoso>
<add key="Username" value="user@contoso.com" />
<add key="Password" value="..." />
<add key="ValidAuthenticationTypes" value="basic" />
</Contoso>
<Test_x0020_Source>
<add key="Username" value="user" />
<add key="Password" value="..." />
<add key="ValidAuthenticationTypes" value="basic, negotiate" />
</Test_x0020_Source>
</packageSourceCredentials>
Při použití nešifrovaných hesel uložených v proměnné prostředí:
<packageSourceCredentials>
<Contoso>
<add key="Username" value="user@contoso.com" />
<add key="ClearTextPassword" value="%ContosoPassword%" />
</Contoso>
<Test_x0020_Source>
<add key="Username" value="user" />
<add key="ClearTextPassword" value="%TestSourcePassword%" />
</Test_x0020_Source>
</packageSourceCredentials>
Při použití nešifrovaných hesel:
Upozorňující
Ukládání hesel ve formátu prostého textu se důrazně nedoporučuje.
<packageSourceCredentials>
<Contoso>
<add key="Username" value="user@contoso.com" />
<add key="ClearTextPassword" value="33f!!lloppa" />
</Contoso>
<Test_x0020_Source>
<add key="Username" value="user" />
<add key="ClearTextPassword" value="hal+9ooo_da!sY" />
</Test_x0020_Source>
</packageSourceCredentials>
apikeys
Ukládá klíče pro zdroje, které používají ověřování pomocí klíče rozhraní API, jak je nastavené pomocí nuget setapikey
příkazu.
Key | Hodnota |
---|---|
(zdrojová adresa URL) | Šifrovaný klíč rozhraní API. |
Příklad:
<apikeys>
<add key="https://MyRepo/ES/api/v2/package" value="encrypted_api_key" />
</apikeys>
disabledPackageSources
Identifikované aktuálně zakázané zdroje. Může být prázdný. Pokud nejsou v této části zakázané konkrétní zdroje, jsou povolené.
Key | Hodnota |
---|---|
(název zdroje) | Logická hodnota označující, jestli je zdroj zakázaný. |
Příklad:
<disabledPackageSources>
<add key="Contoso" value="true" />
</disabledPackageSources>
<!-- Empty list -->
<disabledPackageSources />
Ve výše uvedeném příkladu je zdroj Contoso
balíčku zakázaný a nebude použit ke stažení nebo instalaci balíčků.
activePackageSource
(pouze 2.x; zastaralé ve verzi 3.x+)
Identifikuje aktuálně aktivní zdroj nebo označuje agregaci všech zdrojů.
Key | Hodnota |
---|---|
(název zdroje) nebo All |
Pokud je klíčem název zdroje, hodnota je zdrojová cesta nebo adresa URL. Pokud All by hodnota měla zkombinovat (Aggregate source) všechny zdroje balíčků, které nejsou jinak zakázané. |
Příklad:
<activePackageSource>
<!-- Only one active source-->
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
<!-- All non-disabled sources are active -->
<add key="All" value="(Aggregate source)" />
</activePackageSource>
Oddíl trustedSigners
Ukládá důvěryhodné podepisující osoby používané k povolení balíčku při instalaci nebo obnovení. Tento seznam nemůže být prázdný, pokud uživatel nastaví signatureValidationMode
hodnotu require
.
Tuto část je možné aktualizovat pomocí nuget trusted-signers
příkazu.
Schéma:
Důvěryhodný podepisující znak má kolekci certificate
položek, které zařadí všechny certifikáty, které identifikují daného podepisujícího. Důvěryhodným podepisovačem může být znak nebo Author
Repository
znak .
Důvěryhodné úložiště také určuje serviceIndex
úložiště (které musí být platným https
identifikátorem URI) a volitelně může zadat seznam oddělený středníkem, aby bylo možné omezit ještě více důvěryhodných uživatelů z tohoto konkrétního owners
úložiště.
Podporované hashovací algoritmy používané pro otisk certifikátu jsou SHA256
a SHA384
SHA512
.
certificate
Pokud se při allowUntrustedRoot
true
vytváření řetězu certifikátů při vytváření řetězu certifikátů v rámci ověření podpisu povoluje řetěz zadaný certifikát jako daný certifikát zřetězovat do nedůvěryhodného kořenového adresáře.
Příklad:
<trustedSigners>
<author name="microsoft">
<certificate fingerprint="3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="AA12DA22A49BCE7D5C1AE64CC1F3D892F150DA76140F210ABD2CBFFCA2C18A27" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="566A31882BE208BE4422F7CFD66ED09F5D4524A5994F50CCC8B05EC0528C1353" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
</author>
<repository name="nuget.org" serviceIndex="https://api.nuget.org/v3/index.json">
<certificate fingerprint="0E5F38F57DC1BCC806D8494F4F90FBCEDD988B46760709CBEEC6F4219AA6157D" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="5A2901D6ADA3D18260B9C6DFE2133C95D74B9EEF6AE0E5DC334C8454D1477DF4" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="1F4B311D9ACC115C8DC8018B5A49E00FCE6DA8E2855F9F014CA6F34570BC482D" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<owners>microsoft;aspnet;nuget</owners>
</repository>
</trustedSigners>
oddíl fallbackPackageFolders
(3,5+) Poskytuje způsob, jak předinstalovat balíčky, aby se při nalezení balíčku v náhradních složkách nepovedlo provést žádnou práci. Složky náhradního balíčku mají stejnou strukturu složek a souborů jako globální složka balíčku: .nupkg je k dispozici a všechny soubory se extrahují.
Vyhledávací logika pro tuto konfiguraci je:
Vyhledejte globální složku balíčku a zjistěte, jestli je balíček nebo verze již stažena.
Vyhledejte záložní složky pro shodu balíčku nebo verze.
Pokud je některý z vyhledávání úspěšný, není nutné stáhnout.
Pokud se shoda nenajde, NuGet zkontroluje zdroje souborů a pak zdroje HTTP a pak stáhne balíčky.
Key | Hodnota |
---|---|
(název záložní složky) | Cesta k záložní složce |
Příklad:
<fallbackPackageFolders>
<add key="XYZ Offline Packages" value="C:\somePath\someFolder\"/>
</fallbackPackageFolders>
Oddíl mapování zdroje balíčků
Tato packageSourceMapping
část obsahuje podrobnosti, které pomáhají operacím balíčků NuGet určit, odkud se má stáhnout ID balíčku.
Tento oddíl je teď možné spravovat jenom ručně.
packageSourceMapping
Oddíl může obsahovat packageSource
pouze oddíly.
packageSource
Dílčí část oddílu packageSourceMapping
. Obsahuje mapování, které nuGetu pomůže určit, jestli se má zdroj zvážit pro stažení balíčku, který zajímá.
Klíč |
---|
Název zdroje balíčku deklarovaného v packageSources části Klíč musí přesně odpovídat klíči zdroje balíčku. |
Oddíly packageSource
, packageSourceMapping
pod key
které jsou jednoznačně identifikovány .
package
Je package
součástí oddílu packageSource
.
Vzor |
---|
Vzor definovaný syntaxí mapování zdroje balíčků. |
Příklad:
<packageSourceMapping>
<packageSource key="contoso.com">
<package pattern="Contoso.*" />
</packageSource>
</packageSourceMapping>
oddíl packageManagement
Nastaví výchozí formát správy balíčků, buď packages.config , nebo PackageReference. Projekty ve stylu sady SDK vždy používají PackageReference.
Key | Hodnota |
---|---|
format | Logická hodnota označující výchozí formát správy balíčků. Pokud 1 , formát je PackageReference. Pokud 0 , formát je packages.config. |
deaktivováno | Logická hodnota označující, zda se má zobrazit výzva k výběru výchozího formátu balíčku při první instalaci balíčku. False skryje výzvu. |
Příklad:
<packageManagement>
<add key="format" value="1" />
<add key="disabled" value="False" />
</packageManagement>
Tip
Pokud <clear />
je pro daný uzel přítomen, NuGet ignoruje dříve definované hodnoty konfigurace pro daný uzel. Přečtěte si další informace o způsobu použití nastavení.
Použití proměnných prostředí
Proměnné prostředí můžete použít v nuget.config
hodnotách (NuGet 3.4+) k použití nastavení za běhu.
Pokud HOME
je například proměnná prostředí ve Windows nastavena na c:\users\username
, hodnota v konfiguračním %HOME%\NuGetRepository
souboru se přeloží na c:\users\username\NuGetRepository
.
Všimněte si, že musíte použít proměnné prostředí ve stylu Windows (začíná a končí %) i v Mac/Linuxu. Při použití $HOME/NuGetRepository
v konfiguračním souboru se problém nevyřeší. V systému Mac/Linux se hodnota %HOME%/NuGetRepository
přeloží na /home/myStuff/NuGetRepository
.
Pokud se proměnná prostředí nenajde, NuGet použije hodnotu literálu z konfiguračního souboru. Například %MY_UNDEFINED_VAR%/NuGetRepository
se přeloží jako path/to/current_working_dir/$MY_UNDEFINED_VAR/NuGetRepository
Následující tabulka ukazuje syntaxi proměnné prostředí a oddělovač cest pro soubory NuGet.Config.
NuGet.Config
Podpora proměnných prostředí
Syntaxe | Oddělovač dirů | Windows nuget.exe | Windows dotnet.exe | Mac nuget.exe (v Mono) | Mac dotnet.exe |
---|---|---|---|---|---|
%MY_VAR% |
/ |
Ano | Ano | Ano | Ano |
%MY_VAR% |
\ |
Ano | Ano | No | No |
$MY_VAR |
/ |
No | No | No | No |
$MY_VAR |
\ |
No | No | No | Ne |
Příklad konfiguračního souboru
Níže je příklad nuget.config
souboru, který znázorňuje řadu nastavení, včetně volitelných:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<!--
Used to specify the default location to expand packages.
See: nuget.exe help install
See: nuget.exe help update
In this example, %PACKAGEHOME% is an environment variable.
This syntax works on Windows/Mac/Linux
-->
<add key="repositoryPath" value="%PACKAGEHOME%/External" />
<!--
Used to specify default source for the push command.
See: nuget.exe help push
-->
<add key="defaultPushSource" value="https://MyRepo/ES/api/v2/package" />
<!-- Proxy settings -->
<add key="http_proxy" value="host" />
<add key="http_proxy.user" value="username" />
<add key="http_proxy.password" value="encrypted_password" />
</config>
<packageRestore>
<!-- Allow NuGet to download missing packages -->
<add key="enabled" value="True" />
<!-- Automatically check for missing packages during build in Visual Studio -->
<add key="automatic" value="True" />
</packageRestore>
<!--
Used to specify the default Sources for list, install and update.
See: nuget.exe help list
See: nuget.exe help install
See: nuget.exe help update
-->
<packageSources>
<clear />
<add key="NuGet official package source" value="https://api.nuget.org/v3/index.json" />
<add key="MyRepo - ES" value="https://MyRepo/ES/nuget" />
</packageSources>
<!-- Used to store credentials -->
<packageSourceCredentials />
<!-- Used to disable package sources -->
<disabledPackageSources />
<!--
Used to specify default API key associated with sources.
See: nuget.exe help setApiKey
See: nuget.exe help push
See: nuget.exe help mirror
-->
<apikeys>
<add key="https://MyRepo/ES/api/v2/package" value="encrypted_api_key" />
</apikeys>
<!--
Used to specify trusted signers to allow during signature verification.
See: nuget.exe help trusted-signers
-->
<trustedSigners>
<author name="microsoft">
<certificate fingerprint="3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="AA12DA22A49BCE7D5C1AE64CC1F3D892F150DA76140F210ABD2CBFFCA2C18A27" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="566A31882BE208BE4422F7CFD66ED09F5D4524A5994F50CCC8B05EC0528C1353" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
</author>
<repository name="nuget.org" serviceIndex="https://api.nuget.org/v3/index.json">
<certificate fingerprint="0E5F38F57DC1BCC806D8494F4F90FBCEDD988B46760709CBEEC6F4219AA6157D" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="5A2901D6ADA3D18260B9C6DFE2133C95D74B9EEF6AE0E5DC334C8454D1477DF4" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<certificate fingerprint="1F4B311D9ACC115C8DC8018B5A49E00FCE6DA8E2855F9F014CA6F34570BC482D" hashAlgorithm="SHA256" allowUntrustedRoot="false" />
<owners>microsoft;aspnet;nuget</owners>
</repository>
</trustedSigners>
</configuration>