有漏洞无作为才可怕、可耻!
安全问题:
是否有权限进行CURD,因为参数在地址栏里,是可以修改的,(或参数在html页面里,可以用firebug修改源码),所以进行CURD之前要先查询该操作人是否拥有这条记录,比如:根据门店ID和传递的参数查询这条记录是否属于这个操作人,如果不属于就提示(非法操作,已被记录!,以达到警告的目的)。SQL的where条件不能太单一!
例如:
/* * 校验是否有权限进行CURD */ public function check_rbac($theme_id){ $model=M(); $adm_session = es_session::get(md5(conf("BI_AUTH_KEY")), 1); $location_id=$adm_session['supplier_locations']; $map=array('id'=>$theme_id,'location_id'=>$location_id); $result=$model->where($map)->getField('id'); if(empty($result)){ $this->error('非法操作,已被记录!'); } }
如果您阅读过此文章有所收获,请为我顶一个,如果文章中有错误的地方,欢迎指出。
相互学习,共同进步!
突然十年便过去,都什么时候了,努力,奋斗!