gettoken.jsp
1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<%@ page import="weaver.general.BaseBean" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="weaver.hrm.User" %>
<%@ page import="weaver.sm.SM4Utils" %>
<%@ page import="java.util.Date" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page"/>
<%!
%>
<%
    request.setCharacterEncoding("UTF-8");
    User user = (User) session.getAttribute("weaver_user@bean");
    String targeturl = Util.null2String(request.getParameter("targeturl"));
    if (!"".equals(targeturl)) {
        if (user == null) {
            response.sendRedirect(targeturl);
            return;
        }
        BaseBean b = new BaseBean();
        String ts = new Date().getTime() + "";
        String key = b.getPropValue("qc517210", "key");
        String separator = b.getPropValue("qc517210", "separator");
        String userinfokey = b.getPropValue("qc517210", "userinfo");
        String security_key = b.getPropValue("qc517210", "security_key");
        rs.executeQuery("select (" + userinfokey + ") as userinfo from hrmresource where id=?", user.getUID());
        String userInfo = "";
        if (rs.next()) {
            userInfo = rs.getString("userinfo");
        }
        String s = userInfo + separator + key + separator + ts;
        SM4Utils sm4Utils = new SM4Utils();
        String token = sm4Utils.encrypt(s, security_key, "SM4");
        if (targeturl.indexOf("?") > 0) {
            targeturl = targeturl + "&qystoken=" + token;
        } else {
            targeturl = targeturl + "?qystoken=" + token;
        }
        response.sendRedirect(targeturl);
        return;
    } else {
        out.print("no target url!!!");
    }
%>