收录日期:2019/02/16 20:16:48 时间:2016/08/28 02:02:05 标签:Web 开发
权限控制问题 现在软件遇到了这样一个问题,当我用浏览器打开一个标签登录软件后,再打开一个标签,在登录一个账户,这时候因为将登录信息存放在session中,最后一个登录的账号信息会替换掉第一个的登录信息,但是由于权限控制的问题,本来最后一个登录的用户是没有第一个登录用户的某些权限的(第一个登录用户权限大,第二个权限小),但是我在返回第一个选项卡点击,项目的某项功能,还是可以操作的,请问有人有好的解决办法没有啊?
等二次登录情况
第一标签登录情况如上
感觉你权限只做了一次登陆验证,一般每个功能页面都会再次验证权限的啊。
引用 3 楼 abcmsnet 的回复:
感觉你权限只做了一次登陆验证,一般每个功能页面都会再次验证权限的啊。


就是啊,基本每个页面都会做权限判断的!
这是IE升级后的处理机制,同session问题,基本上任何系统都会遇到这样的问题,你试试以下操作就不会了,摁住ALT键,在浏览器左上角出现的  文件(F)下选择“新建回话”,这样用其它用户登录系统后就不会出现你说的这种现象了。
你这种属于功能性授权,就是这个用户权限高时能看到的菜单比较多,低权限用户看到的菜单比较少。是不是在登录之后根据权限生成菜单的?
是这样的,而且获取权限以后只要登录了就能进行相应的操作,没再做权限验证!请问这个有什么好的解决办法吗?
引用 6 楼 yuboy123456789 的回复:
你这种属于功能性授权,就是这个用户权限高时能看到的菜单比较多,低权限用户看到的菜单比较少。是不是在登录之后根据权限生成菜单的?
该回复于2013-01-22 09:14:45被管理员删除
先谢谢你,但是我想要的是,用户操作时不在出现这种问题,不是我自己用时,请问你有其它的解决办法没啊?
引用 6 楼 yuboy123456789 的回复:
你这种属于功能性授权,就是这个用户权限高时能看到的菜单比较多,低权限用户看到的菜单比较少。是不是在登录之后根据权限生成菜单的?
该回复于2013-01-22 09:14:45被管理员删除
该回复于2013-01-22 09:27:51被管理员删除
该回复于2013-01-22 09:27:51被管理员删除
除了这个还有其他的解决办法吗?
引用 3 楼 abcmsnet 的回复:
感觉你权限只做了一次登陆验证,一般每个功能页面都会再次验证权限的啊。
该回复于2013-01-22 09:27:51被管理员删除
该回复于2013-01-22 09:27:51被管理员删除
该回复于2013-01-22 09:27:51被管理员删除
公司项目里每个功能都由权限控制,基本很经典的role user permission三张表
先谢谢,我们也是用权限控制的啊,现在的问题是用户登录时获取了权限列表,有因为每台电脑只能登录一个用户,后登录的用户会吧先登录用户的信息覆盖掉,所以后登陆的用户可以使用前面登录用户的权限。
引用 17 楼 shxt_xiaozhi 的回复:
公司项目里每个功能都由权限控制,基本很经典的role user permission三张表
感觉上像是浏览器共享session的问题。那你在登录前应该先判断一次你的session中是否存在用户。
但是这样是不是会有问题啊,如果前台界面关闭了,后台session还存在(这种情况有可能会出现啊),是不是用户就登录不了了呢?
引用 19 楼 sgyyz 的回复:
感觉上像是浏览器共享session的问题。那你在登录前应该先判断一次你的session中是否存在用户。
引用 20 楼 liyangyun1986 的回复:
但是这样是不是会有问题啊,如果前台界面关闭了,后台session还存在(这种情况有可能会出现啊),是不是用户就登录不了了呢?
引用 19 楼 sgyyz 的回复:感觉上像是浏览器共享session的问题。那你在登录前应该先判断一次你的session中是否存在用户。

浏览器关闭了,session就不存在了!
或者,你能到登录页面,在登录其他账号前,做一个判断,如果和当前session的一致就重新设定session(保证session过期时间又变为默认时间);如果不是同一个,把之前的session清空,set当前的session就OK了啊。这样就不会共享了。
还有在页面端应该不会出现这样的情况,如果你session没有变化,他也会是当前这个用户的。
引用 18 楼 liyangyun1986 的回复:
先谢谢,我们也是用权限控制的啊,现在的问题是用户登录时获取了权限列表,有因为每台电脑只能登录一个用户,后登录的用户会吧先登录用户的信息覆盖掉,所以后登陆的用户可以使用前面登录用户的权限。
引用 17 楼 shxt_xiaozhi 的回复:
公司项目里每个功能都由权限控制,基本很经典的role user permission三张表
用户的id不一样,怎么会关联同一个权限列表?
楼主你头像我保存了,好可爱哈
不会吧,权限一般都是保存在session里面的,一个ip就一个session会话,怎么会说存在两种权限的,你没控制好而已
说错了,应该是一个浏览器,不会互相干扰的
登录前判断是否已登录。如果已登录,直接转到登录后的页。不再进行登录。要用户自己点退出才能再登录。
引用 13 楼 liyangyun1986 的回复:
除了这个还有其他的解决办法吗?
引用 3 楼 abcmsnet 的回复:感觉你权限只做了一次登陆验证,一般每个功能页面都会再次验证权限的啊。
你看26楼那样做符合你的需求不?
你可以通过同一个浏览器登录或者用不同的浏览器登录令一个账户,这样测试结果就更明晰了。。
好像有些是只能一个帐号登录一个网站吧,不是很了解
权限没控制好

jquery 请问我要append一段很长的html代码怎样换行? 戒烟第三日 散分(100) jquery在asp.net怎么使用 设备轮换使用算法!!几个芯片如何轮换使用最合理! 求个解决数据段交叉的方案 战龙通讯录永久储存 资源ID是1146663的下载时提示文件不存在,但我急需该文件 招聘symbian工程师 问题 问题 ~~~ 用HTML help workshop编译的文件为什么不显示背景图??? JavaScript 基础问题,大家进来看看! 奇怪的C堆问题---stack around the variable \'cur_name\' was corrupted 上海的天又好黑啊~~~~~ 关于nutch的一个简单问题 钩子工作流程新问题 贾君鹏,忠诚滴移动粉丝,怪不得还没有回家噻! window xp 中bugzilla下的sendmail发信模块的配置 如何程序实现word文档只读 百度、谷歌想说爱你也容易(原创) 两个表同步的问题? 设备轮换使用算法!!几个芯片如何轮换使用最合理! 哪里有免费的像这样(或更好的)的完整论坛代码:http://www.objectarx.net/bbs/forumdisplay.php?fid=6,我想练习 数据重复查询 【圈圈牌】舒马赫要复出了,复出第一站能拿第几? pb实现票据自定义格式 DataTable删除重复数据 哪里有免费的像这样(或更好)的完整论坛C#代码:http://www.objectarx.net/bbs/forumdisplay.php?fid=6,我想练习 VC6移植到VS2005时的一个编译错误 HTML的按钮怎样触发cs文件的事件? 多个menu绑定到treeview的问题