Dotazy URI a redaction fragmentu v protokolech IHttpClientFactory
V .NET 9 byla výchozí implementace IHttpClientFactory upravena tak, aby při protokolování informací URI vyčistit řetězce dotazu. Tato změna zlepšuje ochranu osobních údajů tím, že brání protokolování potenciálně citlivých informací obsažených v řetězcích dotazů a zároveň udržuje náklady na výkon redakce minimální. V situacích, kdy je protokolování řetězců dotazů nezbytné a považuje se za bezpečné, můžete toto chování přepsat.
Zavedená verze
.NET 9 Preview 7
Předchozí chování
Dříve výchozí implementace IHttpClientFactory
protokolování zahrnovala řetězce dotazu ve zprávách předaných ILogger, které by mohly neúmyslně vystavit citlivé informace.
Nové chování
Zprávy předané ILogger teď mají část dotazu a fragmentu nahrazenou znakem *
.
Typ zásadní změny
Tato změna je změna chování.
Důvod změny
Hlavním důvodem této změny je zvýšení ochrany osobních údajů snížením rizika neúmyslného protokolování citlivých informací. Řetězce dotazů často obsahují citlivá data a jejich vyloučení z protokolů ve výchozím nastavení pomáhá chránit tyto informace. Aby implementace byla jednoduchá a efektivní, část fragmentu se také vyčistila.
Doporučená akce
Pokud vaše aplikace spoléhá na řetězce dotazů protokolování a jste si jistí, že je to bezpečné, můžete povolit protokolování řetězců dotazů globálně nastavením přepínače AppContext jedním ze tří způsobů:
V souboru projektu.
<ItemGroup> <RuntimeHostConfigurationOption Include="System.Net.Http.DisableUriRedaction" Value="true" /> </ItemGroup>
V souboru runtimeconfig.json.
{ "runtimeOptions": { "configProperties": { "System.Net.Http.DisableUriRedaction": true } } }
Prostřednictvím proměnné prostředí.
Nastavte
DOTNET_SYSTEM_NET_HTTP_DISABLEURIREDACTION
natrue
hodnotu nebo 1.
Jinak se nevyžaduje žádná akce a výchozí chování pomůže vylepšit aspekty ochrany osobních údajů vaší aplikace.
Poznámka:
Tento přepínač také zakáže redakci řetězce dotazu v HttpClient
událostech EventSource. Další informace najdete v tématu Redaction dotazu identifikátoru URI v událostech HttpClient EventSource.