.Net程序如何防止被注入(整站通用)(2)

分类: asp.net技巧   出处:iocblog整理  更新时间:2008-07-27   添加到收藏  

    三、global.asax

    在global.asax中增加下面一段:

    protected void application_beginrequest(object sender, eventargs e){ string[] safeparameters = system.configuration.configurationsettings.appsettings["safeparameters"].tostring()。split(',');for(int i= 0 ;i < safeparameters.length; i++){ string parametername = safeparameters[i].split('-')[0];string parametertype = safeparameters[i].split('-')[1];isvalidparameter(parametername, parametertype);}

    public void isvalidparameter(string parametername, string parametertype){ string parametervalue = request.querystring[parametername];if(parametervalue == null) return;[www.iocblog.net 来源]

    if(parametertype.equals("int32")){ if(!parametercheck.isint(parametervalue)) response.redirect("parametererror.aspx");} else if (parametertype.equals("double")){ if(!parametercheck.isdouble(parametervalue)) response.redirect("parametererror.aspx");} else if (parametertype.equals("uszip")){ if(!parametercheck.isuszip(parametervalue)) response.redirect("parametererror.aspx");} else if (parametertype.equals("email")){ if(!parametercheck.isemail(parametervalue)) response.redirect("parametererror.aspx");}

    以后需要修改的时候我们只需要修改以上三个文件,对整个系统的维护将会大大提高效率,当然你可以根据自己的需要增加其它的变量参数和数据类型。

上一页 [1] [2]


Tag: 防止注入



文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。