我遇到了问题,希望通过 Spring Security 来解决它,我使用的是 Java 1.7、Spring MVC 4.3、Tiles 3、Eclipse Neon 和 CSS。
我不想为每个用户(/admin/normaluser 或/dba)创建不同的上下文,我只想为每个用户提供/myPanel,但当某人登录时,仅根据他的角色向他显示不同的菜单。
此外,我的菜单位于图 block 片段上,这可能吗?
非常感谢您的帮助。
注意。- 我在前端已经不再是新手了,习惯于开发后端。
最佳答案
您可以使用 Spring security taglib 来相应地渲染 View 。 你这样做:
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<ul >
<sec:authorize access="authenticated" var="authenticated"/>
<c:choose>
<c:when test="${authenticated}">
<li>
<a href="<spring:url value="/test1/"/>">menu1</a>
</li>
</c:when>
<c:otherwise>
<li><a href="<spring:url value="/test2/"/>">menu2</a></li>
</c:otherwise>
</c:choose>
</ul>
经过身份验证的用户和访客用户都将使用相同的 URL,但内容会根据其身份验证状态而有所不同
关于java - Spring Security 仅用一条路径处理不同用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41147357/