权限验证

论坛 期权论坛 脚本     
匿名技术用户   2021-1-3 23:38   11   0
[b]收单系统[/b]
用户验证是用filter来判断session中是否有该用户信息

HttpSession session = request.getSession();
BaseUserInfo userInfo = (BaseUserInfo) session.getAttribute(Constants.BaseUserInfo);
if (userInfo == null) {
HttpServletResponse response = (HttpServletResponse)rep;
HttpServletRequest request2 = (HttpServletRequest)req;
response.sendRedirect(request2.getContextPath());
}else{
chain.doFilter(req, rep);
}


权限验证是用自定义标签来做的

public class CheckTag extends TagSupport {

private static final long serialVersionUID = 1L;
private String funCode;

public int doStartTag() throws JspException {
if (FunctionCheck.check(funCode, pageContext.getSession())) {
return EVAL_PAGE;
} else {
return (SKIP_BODY);
}

}

public String getFunCode() {
return funCode;
}
public void setFunCode(String funCode) {
this.funCode = funCode;



<%@ taglib uri="/WEB-INF/tld/checkTag.tld" prefix="c" %>
<c:check funCode="2000030402">
<DIV class="btn">
<DIV class="btn_left"></DIV>
<DIV class="btn_bar"><A href="BIM/2000030004!newPage.action">新增</A></DIV>
<DIV class="btn_right"></DIV>
</DIV>
</c:check>



Innovation项目中用spring security来处理
spring security 复杂度高,但是和spring MVC集成比较好,可以用aop代理机制, 采用annotation方式。
在Controller的方法加上 annotationi来控制
@PreAuthorize("hasAnyRole('MEMBER','ADMIN','SUPERVISOR')")
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP