ssoservice.java

来自「cwbbs 云网论坛源码」· Java 代码 · 共 140 行

JAVA
140
字号
package cn.js.fan.sso;import cn.js.fan.security.SecurityUtil;import cn.js.fan.db.ConnPool;import cn.js.fan.util.StrUtil;import cn.js.fan.util.DateUtil;import org.apache.axis.MessageContext;import javax.servlet.http.HttpServletRequest;import org.apache.axis.transport.http.HTTPConstants;import org.apache.axis.session.Session;import java.sql.ResultSet;import java.util.Calendar;import cn.js.fan.db.ConnPool;import cn.js.fan.db.Conn;import java.io.IOException;import javax.servlet.http.HttpServletResponse;import java.io.PrintStream;import java.io.PrintWriter;public class SSOService {    public SSOService() {    }    private String getRemotHost() throws Exception {        MessageContext context = MessageContext.getCurrentContext();        HttpServletRequest req = (HttpServletRequest) context.getProperty(                HTTPConstants.MC_HTTP_SERVLETREQUEST);        return req.getRemoteHost();    }    public boolean AuthUser(String nick, String pwdMD5) {        if (nick == null || pwdMD5 == null || nick.equals("") ||            pwdMD5.equals(""))            return false;        String sql = "select pwd,isvalid from users where nick=" +                     StrUtil.sqlstr(nick);        ResultSet rs = null;        String pwd1 = "";        boolean re = false;        ConnPool conn = null;        boolean isvalid = true;        String ip = "";        try {            ip = getRemotHost();            conn = new ConnPool("sso");            rs = conn.executeQuery(sql);            if (rs != null && rs.next()) {                pwd1 = rs.getString(1);                isvalid = rs.getInt(2) == 0 ? false : true;            }            if (pwd1.equals(pwdMD5) && isvalid) {                re = true;            } else                System.out.println(DateUtil.format(Calendar.getInstance(),                        "yy-mm-dd hh:mm:ss") + " AuthUser:" + nick +                                   "验证未通过 pwd1=" + pwd1 + " pwdMD5=" + pwdMD5 +                                   " " + ip);        } catch (Exception e) {            System.out.println(DateUtil.format(Calendar.getInstance(),                                               "yy-mm-dd hh:mm:ss") +                               " AuthUser:" + e.getMessage() + " " + ip);        } finally {            if (rs != null) {                try {                    rs.close();                } catch (Exception e) {}                rs = null;            }            if (conn != null)                conn.close();        }        if (re)            System.out.println(DateUtil.format(Calendar.getInstance(),                                               "yy-mm-dd hh:mm:ss") +                               " AuthUser:" + nick + "验证通过 pwd1=" + pwd1 +                               " pwdMD5=" + pwdMD5 + " " + ip);        return re;    }    public boolean RegistUser(String nick, String pwd) throws IOException {        String pwdMD5 = "";        try {            pwdMD5 = SecurityUtil.MD5(pwd);        } catch (Exception e) {}        boolean isvalid = true;        if (nick.equals("") || pwd.equals("")) {            isvalid = false;        }        boolean re = false;        if (isvalid) {            String sql = "insert users (nick,pwd) values (" +                         StrUtil.sqlstr(nick) +                         "," + StrUtil.sqlstr(pwdMD5) + ")";            ConnPool conn = null;            try {                conn = new ConnPool("sso");                re = conn.executeUpdate(sql) == 1 ? true : false;            } catch (Exception e) {                System.out.println("RegistUser:" + e.getMessage());            } finally {                if (conn != null) {                    conn.close();                    conn = null;                }            }        }        return re;    }    public boolean ModifyPwd(String nick, String newpwdMD5) throws IOException {        boolean re = false;        String sql = "update users set pwd=" + StrUtil.sqlstr(newpwdMD5) +                     " where nick=" + StrUtil.sqlstr(nick);        ConnPool conn = null;        try {            conn = new ConnPool("sso");            re = conn.executeUpdate(sql)==1?true:false;        } catch (Exception e) {            re = false;            System.out.println("ModifyPwd:" + e.getMessage());        } finally {            if (conn != null) {                conn.close();                conn = null;            }        }        return re;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?