首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> ASP.NET 基礎

ASP.NET 表單驗證新思路:隨機抽樣驗證

     編輯:ASP.NET 基礎

概念

傳統驗證需檢查所有欄位,若表單欄位極多,可採用隨機抽樣:每次回發只驗證隨機挑選的幾個欄位,降低伺服器負擔,同時提高攻擊成本。

隨機數產生

public static int RandomIndex(int maxExclusive)
{
    return new Random().Next(0, maxExclusive);
}

驗證範例

int i = RandomIndex(8); // 假設欄位為 txt0 ~ txt7
if (!string.IsNullOrEmpty(Request.Form["txt" + i]))
{
    // 對該欄位進行詳細驗證
}

進階:驗證所有非空欄位

foreach (string key in Request.Form)
{
    if (!string.IsNullOrEmpty(Request.Form[key]))
    {
        // 驗證邏輯
    }
}

注意:需排除非表單欄位(如 __VIEWSTATE、__EVENTVALIDATION)。

適用場景

  • 超大型表單(百欄位以上)。
  • 需平衡安全性與效能的公開表單。
  • 配合蜜罐欄位、CSRF Token 使用效果更佳。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved