Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans .NET 9, l’implémentation par défaut d’a été modifiée pour nettoyer les chaînes de requête lors de IHttpClientFactory la journalisation des informations d’URI. Cette modification améliore la confidentialité en empêchant la journalisation des informations potentiellement sensibles contenues dans les chaînes de requête, tout en maintenant au minimum les coûts de performance. Pour les scénarios où la journalisation des chaînes de requête est nécessaire et considérée comme sécurisée, vous pouvez remplacer ce comportement.
Version introduite
.NET 9 Préversion 7
Comportement précédent
Auparavant, l’implémentation par défaut de la journalisation incluait des chaînes de IHttpClientFactory requête dans les messages passés, ILoggerce qui pouvait exposer par inadvertance des informations sensibles.
Nouveau comportement
Les messages transmis à ILogger ont maintenant la partie requête et fragment remplacée par un caractère *.
Type de changement cassant
Ce changement est un changement de comportement.
Raison du changement
La principale raison de ce changement est d’améliorer la confidentialité en réduisant le risque d’enregistrement par inadvertance d’informations sensibles. Les chaînes de requête contiennent souvent des données sensibles et les excluent des journaux par défaut vous aident à protéger ces informations. Pour que l’implémentation soit simple et efficace, la partie fragment est également nettoyée.
Action recommandée
Si votre application s’appuie sur la journalisation des chaînes de requête et que vous êtes certain qu’il est sûr de le faire, vous pouvez activer la journalisation des chaînes de requête globalement en définissant un commutateur AppContext de l’une des trois manières suivantes :
Dans le fichier projet.
<ItemGroup> <RuntimeHostConfigurationOption Include="System.Net.Http.DisableUriRedaction" Value="true" /> </ItemGroup>Dans le fichier runtimeconfig.json.
{ "runtimeOptions": { "configProperties": { "System.Net.Http.DisableUriRedaction": true } } }Via une variable d’environnement.
Définissez
DOTNET_SYSTEM_NET_HTTP_DISABLEURIREDACTIONsurtrueou 1.
Sinon, aucune action n’est requise et le comportement par défaut permet d’améliorer les aspects de confidentialité de votre application.
Remarque
Ce commutateur désactive également la réaction de chaîne de requête dans HttpClient les événements EventSource. Pour plus d’informations, consultez la rédaction des requêtes d’URI dans les événements HttpClient EventSource.