【问题标题】:Spring Security handle different users with only one pathSpring Security 只用一个路径处理不同的用户
【发布时间】:2017-04-30 01:32:09
【问题描述】:
我有一个问题,我想用 Spring Security 解决它,我正在使用 Java 1.7、Spring MVC 4.3、Tiles 3、Eclipse Neon 和 CSS。
我不想为每个用户(/admin /normaluser 或 /dba)制作不同的上下文>
另外,我的菜单位于图块片段上,这可能吗?
感谢您的帮助。
注意。我是前端新手,用于开发后端。
【问题讨论】:
标签:
java
session
spring-security
【解决方案1】:
您可以使用 Spring 安全标签库来相应地呈现视图。
你这样做:
<%@ 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,但内容会根据其身份验证状态而有所不同