CA2262 : Définir correctement « MaxResponseHeadersLength »

Propriété Value
Identificateur de la règle CA2262
Titre Définir correctement MaxResponseHeadersLength
Catégorie Utilisation
Le correctif est cassant ou non cassant Sans rupture
Activée par défaut dans .NET 9 À titre de suggestion

Cause

La propriété HttpClientHandler.MaxResponseHeadersLength est définie sur une valeur supérieure à 128.

Description de la règle

La propriété HttpClientHandler.MaxResponseHeadersLength est exprimée en kilo-octets, et non pas en octets. La longueur maximale par défaut est de 64 Ko, ce qui doit être suffisamment grand pour la majorité des cas d’usage. Si vous avez défini la propriété sur une valeur supérieure à 128 kilo-octets, c’est que vous avez peut-être mal compris les unités de cette propriété.

Comment corriger les violations

Si vous avez l’intention de définir une valeur plus petite, mettez-la à jour avec la valeur souhaitée mesurée en kilo-octets.

Exemple

HttpClientHandler handler = new()
{
    // Violation
    MaxResponseHeadersLength = 512

    // Fix (it is not possible to specify a limit lower than 1 KB)
    MaxResponseHeadersLength = 1
};

Dim handler As New HttpClientHandler With {
    ' Violation
    .MaxResponseHeadersLength = 512

    ' Fix (it is not possible to specify a limit lower than 1 KB)
    .MaxResponseHeadersLength = 1
}

Quand supprimer les erreurs

Vous pouvez sans problème supprimer cet avertissement si cette valeur élevée est ce que vous souhaitez.