我正在使用 jsp/servlet 项目,我必须完成对我的 jsps 的访问管理模块,因为我有多个具有不同配置文件的用户。
我在我的数据库中定义了一个表,它恢复了配置文件和允许的 url,如下所示:
id_profil :1
url : http://localhost/...xyz.jsp
id page 1
现在我试图让菜单适当地修改为登录用户的 id_profil。
因此,一个配置文件中允许有页面,但必须对其他人隐藏。从现在起我不知道如何实现这一点。
我正在使用 jsp/servlet 项目,我必须完成对我的 jsps 的访问管理模块,因为我有多个具有不同配置文件的用户。
我在我的数据库中定义了一个表,它恢复了配置文件和允许的 url,如下所示:
id_profil :1
url : http://localhost/...xyz.jsp
id page 1
现在我试图让菜单适当地修改为登录用户的 id_profil。
因此,一个配置文件中允许有页面,但必须对其他人隐藏。从现在起我不知道如何实现这一点。
这有点含糊不清,但您可以在 jsp 中使用 if 来隐藏基于id_profil的菜单选项,如下所示:
<c:if test="${currentUser.id_profil == 1}">
<button label="Only id_profil 1"/>
</c:if>
请记住,通过更改菜单显示的值,您不会阻止用户直接访问页面——即使用户无法通过下拉菜单项访问 xyz.jsp,他们仍然可以输入xyz.jsp 到他们浏览器的地址栏中。因此,您必须以另一种方式阻止访问。
如果您对 Spring 有任何经验,或者正在考虑实施它,请查看Spring Security。它可用于限制用户对应用程序不同部分的访问权限。如果您已经熟悉 Spring,那么实现起来并不难。
ETA:对于一些不涉及 Spring Security 的基础知识,请查看 web.xml 中的安全性:http: //java.sun.com/javaee/5/docs/tutorial/doc/bncbe.html#bncbj