次の方法で共有


CA2262: 'MaxResponseHeadersLength' を正しく設定する

プロパティ
ルール ID CA2262
Title MaxResponseHeadersLength を正しく設定する
カテゴリ 使用方法
修正が中断ありか中断なしか なし
.NET 9 では既定で有効 提案として

原因

HttpClientHandler.MaxResponseHeadersLength プロパティが 128 よりも大きな値に設定されています。

規則の説明

HttpClientHandler.MaxResponseHeadersLength プロパティの単位はバイトではなく、キロバイトです。 既定の最大長は 64 KB であり、ほとんどのユース ケースでは十分な大きさのはずです。 このプロパティを 128 KB を超える値に設定した場合は、プロパティの単位を誤解していたことが原因である可能性があります。

違反の修正方法

より小さい値を設定する場合は、KB 単位で測定された目的の値に更新します。

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
}

どのようなときにエラーを抑制するか

意図的に大きな値を使用していた場合は、この警告を抑制しても問題ありません。