做一个添加下级用户的界面,
首先登录管理员(上级),通过session获取到管理员的相关信息,(权限级别,编码等数据),
然后在添加界面的jsp调用hidden字段,准备和表单其他值一起传到action里,代码如下:
<input id="higherno" name="higherno" type="hidden" value="<%=session.getAttribute("myserialnumber")%>" />现在发现我登录上级身份进到页面,然后查看源文件,直接可以看到上次被隐藏的value值,心中很不安
问:从客户端可以修改hidden的value值,然后上传到服务器么?
PS:求解答,50分送上!应该是小问题!jsphiddenaction

解决方案 »

  1.   

    这个值是可以随便改的。。比如开发者Chrome。这样做适合保存不敏感的信息。
    另外,无论如何服务器端都要重要值的进行合法性判断。因为理论上来说表单任何数据都是可以改的。。
      

  2.   

    为什么非得把管理员信息放在session呢?就放在服务器端,然后action里面取也一样的撒。另外,我有一点疑惑,非管理员难道也能看到添加下级的菜单?如果看不到,那即使hidden field里面的值被看到也无所谓啊,那也只能管理员才看得到这个值。如果看得见,那说明权限模块没设计好。
      

  3.   

    非管理员看不到的,这个是内部管理系统,我所说的情况主要就是以现在登录的对象为管理员的前提,我添加一个管理员的下级用户,需要获取这个管理员自身的一些信息,担心的就是管理员自己看到jsp从服务器获取到的hidden字段,胡乱进行修改
      

  4.   


    有道理,首先这是个内部管理系统,我只需要确定它虽然能看到这些信息,但是修改不了就可以在具体的说就是,比如现在管理员A添加下级用户B,首先管理A登录,我从服务器获取到A的一些信息,存在了添加B用户的界面的hidden里,那么,这个时候A管理可以先进到源文件里面,把hidden的value修改了,然后再去添加用户吗,这样的话,比如这个用户B本来的上级A是一级用户,被改了value就变成了二级管理的下级用户,求解!我一会自己再测试下
      

  5.   

    为什么要把session的值放到界面上来隐藏起来传到后台?你不会在后台再从session取值吗?
    可以很认真的告诉你,任何一个在界面的表单值,都可以通过url的形式伪造地址数据。
      

  6.   

    来结贴了,自己解决了,还是为了安全,放在action里了!完全可以实现!