最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#檢測(cè)是否有危險(xiǎn)字符的SQL字符串過(guò)濾方法

 更新時(shí)間:2014年07月25日 16:34:22   投稿:shichen2014  
這篇文章主要介紹了C#檢測(cè)是否有危險(xiǎn)字符的SQL字符串過(guò)濾方法,功能非常實(shí)用,對(duì)于程序設(shè)計(jì)的安全來(lái)說(shuō)至關(guān)重要!需要的朋友可以參考下

本文以一個(gè)C#的SQL數(shù)據(jù)庫(kù)字串操作函數(shù)為例,說(shuō)明如何實(shí)現(xiàn)對(duì)SQL字符串過(guò)濾、檢測(cè)SQL是否有危險(xiǎn)字符、修正sql語(yǔ)句中的轉(zhuǎn)義字符,確保SQL不被注入等功能。具體實(shí)現(xiàn)代碼如下:

SQL字符串過(guò)濾函數(shù):

public static bool ProcessSqlStr(string Str)
{
  bool ReturnValue = true;
  try
  {
    if (Str.Trim() != "")
    {
      string SqlStr = "exec|insert+|select+|delete|update|count|chr|mid|master+|truncate|char|declare|drop+|drop+table|creat+|create|*|iframe|script|";
      SqlStr += "exec+|insert|delete+|update+|count(|count+|chr+|+mid(|+mid+|+master+|truncate+|char+|+char(|declare+|drop+table|creat+table";
      string[] anySqlStr = SqlStr.Split('|');
      foreach (string ss in anySqlStr)
      {
        if (Str.ToLower().IndexOf(ss) >= 0)
        {
          ReturnValue = false;
          break;
        }
      }
    }
  }
  catch
  {
    ReturnValue = false;
  }
  return ReturnValue;
}

以下是檢測(cè)SQL語(yǔ)句中是否包含有非法危險(xiǎn)的字符:

/// <summary>
/// 檢測(cè)是否有Sql危險(xiǎn)字符
/// </summary>
/// <param name="str">要判斷字符串</param>
/// <returns>判斷結(jié)果</returns>
public static bool IsSafeSqlString(string str)
{
  return !Regex.IsMatch(str, @"[-|;|,|\/|\(|\)|\[|\]|\}|\{|%|@|\*|!|\']");
}
/// <summary>
/// 改正sql語(yǔ)句中的轉(zhuǎn)義字符
/// </summary>
public static string mashSQL(string str)
{
  string str2;
  if (str == null)
  {
    str2 = "";
  }
  else
  {
    str = str.Replace("\'", "'");
    str2 = str;
  }
  return str2;
}

相關(guān)文章

  • C#?List生成Txt文檔并且讀取Txt文檔封裝List

    C#?List生成Txt文檔并且讀取Txt文檔封裝List

    這篇文章主要介紹了C#?List生成Txt文檔并且讀取Txt文檔封裝List,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-08-08
  • C#常用日期時(shí)間方法匯總

    C#常用日期時(shí)間方法匯總

    這篇文章介紹了C#常用的日期時(shí)間方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • C#如何優(yōu)雅的對(duì)WinForm窗體應(yīng)用程序進(jìn)行權(quán)限控制

    C#如何優(yōu)雅的對(duì)WinForm窗體應(yīng)用程序進(jìn)行權(quán)限控制

    經(jīng)常會(huì)出現(xiàn)winfrom頁(yè)面需要加載權(quán)限樹,下面這篇文章主要給大家介紹了關(guān)于C#如何優(yōu)雅的對(duì)WinForm窗體應(yīng)用程序進(jìn)行權(quán)限控制的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • .Net WInform開發(fā)筆記(三)談?wù)勛灾瓶丶?自定義控件)

    .Net WInform開發(fā)筆記(三)談?wù)勛灾瓶丶?自定義控件)

    自定義控件的出現(xiàn)有利于用戶更好的實(shí)現(xiàn)自己的想法,可以封裝一些常用的方法,屬性等等,本文詳細(xì)介紹一下自定義控件的實(shí)現(xiàn),感興趣的朋友可以了解下
    2013-01-01
  • C#動(dòng)態(tài)創(chuàng)建button按鈕的方法實(shí)例詳解

    C#動(dòng)態(tài)創(chuàng)建button按鈕的方法實(shí)例詳解

    這篇文章主要介紹了C#動(dòng)態(tài)創(chuàng)建button按鈕的方法實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • C#書寫規(guī)范

    C#書寫規(guī)范

    C#書寫規(guī)范...
    2007-03-03
  • List<>中Find的用法小結(jié)

    List<>中Find的用法小結(jié)

    本篇文章主要是對(duì)List<>中Find的用法進(jìn)行了總結(jié)介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2014-01-01
  • C#泛型約束的深入理解

    C#泛型約束的深入理解

    本篇文章是對(duì)C#中的泛型約束進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Unity3D實(shí)現(xiàn)相機(jī)跟隨控制

    Unity3D實(shí)現(xiàn)相機(jī)跟隨控制

    這篇文章主要為大家詳細(xì)介紹了Unity3D實(shí)現(xiàn)相機(jī)跟隨控制,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • C# 預(yù)處理器指令的用法

    C# 預(yù)處理器指令的用法

    本文主要介紹了C# 預(yù)處理器指令的用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04

最新評(píng)論

浮梁县| 辉县市| 阿拉善左旗| 九江县| 新田县| 西平县| 鄢陵县| 克东县| 方城县| 定结县| 永年县| 年辖:市辖区| 千阳县| 东乌珠穆沁旗| 临洮县| 四子王旗| 洞头县| 虹口区| 崇左市| 商水县| 沂水县| 吉安市| 清远市| 齐河县| 桦川县| 大同县| 盱眙县| 太谷县| 永德县| 阳谷县| 孙吴县| 泌阳县| 扬州市| 墨竹工卡县| 包头市| 哈密市| 长乐市| 凤凰县| 西乌珠穆沁旗| 柯坪县| 嵊泗县|