防止SQL注入
SQL注入:通过恶意传参,欺骗server端执行恶意SQL。
select * from students where id=2 or 2=2; //通过使where条件恒真获取全表数据
然后猜测表名再对表做修改。
1、不要信任client端用户的输入,包括form submit、get请求参数字符串,都要做验证。正则验证,限制参数长度,对单双引号转好,参数加密。
2、不要动态拼装SQL,要用PreparedStatement。
3、数据库链接不要用root权限,要为应用分配单独的权限。
4、关键信息加密存放。
5、返回给前端的异常信息要做包装,防止原生异常中系统信息被暴露到前端。