二、守好JavaBean的入口 JSP组件技术的核心是被称为bean的java组件。在程序中可把逻辑控制、数据库操作放在javabeans组件中,然后在JSP文件中调用它,这样可增加程序的清晰度及程序的可重用性。和传统的ASP或PHP页面相比,JSP页面是非常简洁的,因为许多动态页面处理过程可以封装到JavaBean中。 要改变JavaBean属性,要用到“<jsp:setProperty>”标记。 下面的代码是假想的某电子购物系统的源码的一部分,这个文件是用来显示用户的购物框中的信息的,而checkout.jsp是用来结帐的。 <jsp:useBean id="myBasket" class="BasketBean"> 注意到property="*"了吗?这表明用户在可见的JSP页面中输入的,或是直接通过Query String提交的全部变量的值,将存储到匹配的bean属性中。 一般,用户是这样提交请求的: http://www.somesite.com/addToBasket.jsp?newItem=ITEM0105342 但是不守规矩的用户呢?他们可能会提交: http://www.somesite.com/addToBasket.jsp?newItem=ITEM0105342&balance=0 这样,balance=0的信息就被在存储到了JavaBean中了。当他们这时点击“chekout”结账的时候,费用就全免了。 这与PHP中全局变量导致的安全问题如出一辙。由此可见:“property="*"”一定要慎用!
|
正在阅读:JSP安全编程实例浅析JSP安全编程实例浅析
2005-01-19 10:37
出处:
责任编辑:xietaoming
键盘也能翻页,试试“← →”键