Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In .NET 9 is het standaardgedrag van EventSource gebeurtenissen die worden verzonden door HttpClient en SocketsHttpHandler (EventSource naam: System.Net.Http) gewijzigd om de query, gebruikersgegevens en fragmentonderdelen van de URI te verwijderen. Deze wijziging verbetert de privacy door het vastleggen van mogelijk gevoelige informatie in queryreeksen te voorkomen, terwijl de prestatiekosten van de redaction minimaal blijven. Indien nodig kunt u dit gedrag overschrijven.
Geïntroduceerde versie
.NET 9 preview 7
Vorig gedrag
Voorheen bevatten gebeurtenissen die door HttpClient en SocketsHttpHandler werden gegenereerd informatie uit de queryreeks, waardoor gevoelige informatie onbedoeld kon worden blootgesteld.
Nieuw gedrag
Met de wijziging in dotnet/runtime#104741 wordt het queryonderdeel vervangen door een * teken en worden de gebruikersgegevens en fragmentonderdelen standaard verwijderd in HttpClient en SocketsHttpHandler gebeurtenissen. Deze wijziging is van invloed op specifieke gebeurtenissen en parameters, zoals pathAndQuery in RequestStart en redirectUri in Redirect.
Type brekende wijziging
Deze wijziging is een gedragswijziging.
Reden voor wijziging
De belangrijkste reden voor deze wijziging was het verbeteren van de privacy door het risico te verminderen dat gevoelige informatie per ongeluk wordt geregistreerd. Queryreeksen bevatten vaak gevoelige gegevens en het redacteren van logboeken helpt deze informatie standaard te beveiligen. Om de implementatie eenvoudig en efficiënt te houden, worden de gebruikersinformatie en fragmentonderdelen ook geschrobd.
Aanbevolen actie
Als u informatie uit de querytekenreeks nodig hebt bij het verwerken van gebeurtenissen van HttpClient of SocketsHttpHandler en u er zeker van bent dat dit veilig is, kunt u URI-redactie globaal uitschakelen door op een van de volgende drie manieren een AppContext-switch in te stellen. De schakelaar slaat elke redigering over, zodat URI's ongewijzigd worden gerapporteerd, inclusief de query-, gebruikersinformatie- en fragmentdelen.
In het projectbestand.
<ItemGroup> <RuntimeHostConfigurationOption Include="System.Net.Http.DisableUriRedaction" Value="true" /> </ItemGroup>In het bestand runtimeconfig.json .
{ "runtimeOptions": { "configProperties": { "System.Net.Http.DisableUriRedaction": true } } }Via een omgevingsvariabele.
Ingesteld
DOTNET_SYSTEM_NET_HTTP_DISABLEURIREDACTIONoptrueof 1.
Anders is er geen actie vereist en het standaardgedrag helpt de privacyaspecten van uw toepassing te verbeteren.
Notitie
Deze schakelaar slaat ook de redactie van URI’s over in de standaardlogboeken IHttpClientFactory. Zie queryredactie van URI's in logboeken van IHttpClientFactory voor meer informatie.