<%@page import="com.jsjty.sso.util.DesPasswordEncoder"%> <%@page import="net.sf.json.JSONArray"%> <%@page import="com.jsjty.user.mapper.UserMapper"%> <%@page import="com.jsjty.common.Constants"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> <%@ page import="java.util.ArrayList"%> <%@ page import="java.util.Arrays"%> <%@ page import="com.jsjty.sso.common.SystemConfig"%> <%@ page import="org.jasig.cas.ticket.registry.DefaultTicketRegistry"%> <%@ page import="org.springframework.context.ApplicationContext"%> <%@ page import="org.springframework.web.context.support.WebApplicationContextUtils"%> <%@ page import="org.jasig.cas.ticket.registry.TicketRegistry"%> <%@ page import="org.jasig.cas.ticket.TicketGrantingTicket"%> <%@ page import="java.util.List"%> <%@ page import="org.jasig.cas.authentication.Authentication"%> <%@ page import="org.jasig.cas.authentication.principal.Principal"%> <%@ page import="com.jsjty.sp.dao._SpDao"%> <%@ page import="com.jsjty.sp.entity.SpEntity"%> <%@ page import="com.jsjty.menu.entity.MenuEntity"%> <%@ page import="com.jsjty.user.entity.UserEntity"%> <%@ page import="org.springframework.webflow.execution.RequestContext"%> <%@ page import="com.jsjty.menu.dao.MenuDao"%> <% String tgtid=""; //管理用户按钮权限 String isUserManageAppear = "0"; //cookie里获取到TGT Cookie cookie = org.springframework.web.util.WebUtils.getCookie(request, "CASTGC"); if(cookie != null) tgtid=cookie.getValue(); //上下文中拿到TGT,优先级高于cookie,因为cookie可能失效, if(request.getAttribute("ticketGrantingTicketId")!=null&&request.getAttribute("ticketGrantingTicketId").toString()!=""){ tgtid=request.getAttribute("ticketGrantingTicketId").toString(); } DefaultTicketRegistry registry=(DefaultTicketRegistry) WebApplicationContextUtils.getWebApplicationContext(request.getServletContext()).getBean("ticketRegistry"); //通过获取tgt对象 TicketGrantingTicket ticketGrantingTicket = (TicketGrantingTicket) registry.getTicket(tgtid, TicketGrantingTicket.class); //根据tgtid获取tgt对象 if(ticketGrantingTicket!=null){ final List chainedAuthenticationsList = ticketGrantingTicket.getChainedAuthentications(); final Authentication authentication = chainedAuthenticationsList.get(chainedAuthenticationsList.size() - 1); final Principal principal = authentication.getPrincipal(); /* uname=principal.getAttributes().get("username"); */ //获取用户访问权限 _SpDao spDao = (_SpDao) WebApplicationContextUtils.getWebApplicationContext(request.getServletContext()).getBean("_spDao"); List list = new ArrayList(); list = spDao.queryList(principal.getId()); session.setAttribute("username", principal.getId()); if(session.getAttribute(Constants.USER_KEY)==null){ UserMapper userMapper=WebApplicationContextUtils.getWebApplicationContext(request.getServletContext()).getBean(UserMapper.class); session.setAttribute(Constants.USER_KEY,userMapper.findByUname(principal.getId())); } if(session.getAttribute("sso_menuList")==null){ //获取用户可访问菜单 MenuDao menuService = (MenuDao) WebApplicationContextUtils.getWebApplicationContext(request.getServletContext()).getBean("menuDao"); List sso_menuList = menuService.queryMenusByUser(principal.getId()); session.setAttribute("sso_menuList", sso_menuList); } /* //外部url特殊处理 String CREDENTIAL_ID = SystemConfig.readValue("CREDENTIAL_ID");//"xxxxx"; String external_sp = SystemConfig.readValue("EXTERNAL_SP"); */ ServletContext context = request.getSession().getServletContext(); session.setAttribute("menuList", list); //将menuList转换成json格式 JSONArray tableArray = JSONArray.fromObject(list); request.setAttribute("list", tableArray); String allow_users = SystemConfig.readValue("ALLOW_MANAGE_USERS"); if(!"".equals(allow_users)){ List allow_users_List = Arrays.asList(allow_users.split(",")); if(allow_users_List.contains(principal.getId())){ isUserManageAppear = "1"; } } }else { session.setAttribute("username", ""); session.setAttribute(Constants.USER_KEY, null); //注销cookie中的TGT response.sendRedirect(response.encodeURL(request.getContextPath()+"/logout")); } session.setAttribute("isUserManageAppear", isUserManageAppear); String rtx_server_ip = SystemConfig.readValue("RTX_SERVER_IP"); %> 江苏港口智能监管信息平台 <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ include file="../../common.jsp"%>