【发布时间】:2015-10-02 17:56:45
【问题描述】:
我有一个基于 Java/Struts/Hibernate 的应用程序。它有两种类型的用户。管理员和普通用户。我为角色和操作创建了单独的 Struts 页面。
但是当我以普通用户身份登录后在 URL 中键入管理操作时,普通用户可以访问管理页面。我该如何解决这个问题?
我已经输入了管理员和用户的操作类,它们在 xml 页面中是分开的,并且包含在 struts.xml 页面中。如果您正在使用该应用程序,一切正常。但请考虑在 struts-admin 中执行操作,例如:adminHome,它将是localhost:8080/app/adminHome。如果普通用户登录,则 URL 将为localhost:8080/app/normalHome。但是如果普通用户类型将normalHome更改为adminHome,他可以访问Admin页面。
更新:
正如我之前所说,我在 struts.xml 的不同包中有管理员和用户操作。我可以在 Java 中获取它的包名吗?然后我与user_role 进行比较并直接到管理员/normal pages..
【问题讨论】:
-
先发布您的代码。
-
向我们展示一些代码以及您想到的所有想法/方式。
-
已编辑帖子。实际上我需要一些授权方法来在我的应用程序中执行。
-
哪个 Struts 版本?显示您的代码和配置。
-
我的应用程序中已经有了拦截器。如何自定义它以根据操作类选择管理员/用户?
标签: java struts2 authorization struts roles