有什么方法不用修改具体的功能页面,解决SQL注入问题.比如有一个全局的修改解决SQL注入?

解决方案 »

  1.   

    写个类 实现IhttpModel 接口在该类中     public void Init(HttpApplication context)
            {
                context.AcquireRequestState += new EventHandler(context_AcquireRequestState);
                
            }
          private void context_AcquireRequestState(object sender, EventArgs e)
            {
               //在这里面判断 从url参数中取出的数据 和form表单中的数据 ,如果有非法字符就做相应处理
            }
    配置下webconfig的httpModules节点
      

  2.   

    如果程序比较烂,还是尽早修改源代码为好。通常从录入信息整理为SQL语句的地方是很少的,例如20个输入控件最后整理为一条SQL语句发往数据库,如果你去修改20个录入控件的代码得不偿失,不如关注这一条SQL语句处理代码(例如从拼字符串写法改为参数写法)。在你不知道有什么所谓的“标准”不允许录入特定的字符之前,不要乱定标准。例如有人说凡是程序都是:单引号不允许录入、“--”不允许录入,等等,这样是太想当然的了吧,只图眼下省事蒙混过关,只会对软件将来的使用和维护带来很坏的影响。
      

  3.   

    可以写个方法 屏蔽一下特殊符号,在sql中带变量的地方都 调用一下方法