还剩1页未读,继续阅读
文本内容:
网站平安整站如何防止SQL注入方式入侵电脑资料防止SQL注入,通常一个一个文件修改不仅费事而且还有漏掉的危险,下面我说一下如何从整个系统防止注入,做到以下三步,相信你的程序就会比拟平安了,而且对整个网站的维护也将变的简单
一、数据验证类parameterCheck.cspublicclassparameterCheck{publicstaticboolisEmailstringemailString{returnSystem.Text.RegularExpressions.Regex.IsMatchemailString[\w-]+\.[\w-]+*@[\w-]+\.[\w-]+*\.[a-zA-Z]{24};}publicstaticboolisIntstringintString{returnSystem.Text.RegularExpressions.Regex.IsMatchintString^\d{5}-\d{4}|\d{5}$;}publicstaticboolisUSZipstringzipString{returnSystem.Text.RegularExpressions.Regex.IsMatchzipString^-[0-9]+$|^[0-9]+$;}}在你的Web.config文件中,在下面增加一个标签,如下USzip/其中key是后面的值为“OrderId-int32”等,其中“-”前面表示参数的名称比方OrderId,后面的int32表示数据类型在Global.asax中增加下面一段protectedvoidApplicationBeginRequestObjectsenderEventArgse{String[]safeParameters=System.Configuration.ConfigurationSettings.AppSettings[safeParameters].ToString.Split;forinti=0;isafeParameters.Length;i++{StringparameterName=safeParameters[i].Split-
[0];StringparameterType=safeParameters[i].Split-
[1];isValidParameterparameterNameparameterType;}}publicvoidisValidParameterstringparameterNamestringparameterType{stringparameterValue=Request.QueryString[parameterName];ifparameterValue==nullreturn;ifparameterType.Equalsint32{if!parameterCheck.isIntparameterValueResponse.RedirectparameterError.aspx;}elseifparameterType.Equalsdouble{if!parameterCheck.isDoubleparameterValueResponse.RedirectparameterError.aspx;}elseifparameterType.EqualsUSzip{if!parameterCheck.isUSZipparameterValueResponse.RedirectparameterError.aspx;}elseifparameterType.Equalsemail{if!parameterCheck.isEmailparameterValueResponse.RedirectparameterError.aspx;}}以后需要修改的时候我们只需要修改以上三个文件,对整个系统的维护将会大大进步效率,当然你可以根据自己的需要增加其它的变量参数和数据类型,模板内容仅供参考 。