List of usage examples for org.apache.shiro.crypto.hash SimpleHash SimpleHash
public SimpleHash(String algorithmName, Object source, Object salt) throws CodecException, UnknownAlgorithmException
From source file:com.zrx.authority.web.controller.system.login.LoginController.java
/** * ?/*from ww w . ja v a 2s .c om*/ * * @throws java.lang.Exception */ @RequestMapping(value = "/login_login") @ResponseBody public Object login() throws Exception { Map<String, String> map = new HashMap<String, String>(); PageData pd = new PageData(); pd = this.getPageData(); String errInfo = ""; String KEYDATA[] = pd.getString("KEYDATA").replaceAll("qq12345678fh", "").replaceAll("QQ98765423fh", "") .split(",fh,"); if (null != KEYDATA && KEYDATA.length == 3) { //shiro?session Subject currentUser = SecurityUtils.getSubject(); Session session = currentUser.getSession(); String sessionCode = (String) session.getAttribute(Const.SESSION_SECURITY_CODE); //?session?? String code = KEYDATA[2]; //?? if (null == code || "".equals(code)) { errInfo = "nullcode"; //?? } else { String USERNAME = KEYDATA[0]; String PASSWORD = KEYDATA[1]; if (Tools.notEmpty(sessionCode) && sessionCode.equalsIgnoreCase(code)) { String passwd = new SimpleHash("SHA-1", USERNAME, PASSWORD).toString(); //? pd.put("PASSWORD", passwd); pd.put("USERNAME", USERNAME); pd = userService.getUserByNameAndPwd(pd); if (pd != null) { pd.put("LAST_LOGIN", DateUtil.getTime().toString()); userService.updateLastLogin(pd); User user = new User(); user.setUSER_ID(pd.getString("USER_ID")); user.setUSERNAME(pd.getString("USERNAME")); user.setPASSWORD(pd.getString("PASSWORD")); user.setNAME(pd.getString("NAME")); user.setRIGHTS(pd.getString("RIGHTS")); user.setROLE_ID(pd.getString("ROLE_ID")); user.setLAST_LOGIN(pd.getString("LAST_LOGIN")); user.setIP(pd.getString("IP")); user.setSTATUS(pd.getString("STATUS")); session.setAttribute(Const.SESSION_USER, user); session.removeAttribute(Const.SESSION_SECURITY_CODE); //shiro? Subject subject = SecurityUtils.getSubject(); UsernamePasswordToken token = new UsernamePasswordToken(USERNAME, PASSWORD);//authc try { subject.login(token);//? } catch (AuthenticationException e) { errInfo = "??"; } } else { errInfo = "usererror";//??? } } else { errInfo = "codeerror"; //?? } if (Tools.isEmpty(errInfo)) { errInfo = "success"; //?? } } } else { errInfo = "error"; //? } map.put("result", errInfo); System.out.println("...." + errInfo); return AppUtil.returnObject(new PageData(), map);// map //return map; }
From source file:com.zuoxiaolong.niubi.job.persistent.shiro.HashHelper.java
License:Apache License
public static String getHashedPassword(String password, String salt) { Hash hash = new SimpleHash(hashAlgorithm, password, salt); return hash.toHex(); }
From source file:org.graylog2.security.hashing.SHA1HashPasswordAlgorithm.java
License:Open Source License
private String hash(String password, String salt) { return new SimpleHash(HASH_ALGORITHM, password, salt).toString(); }
From source file:org.graylog2.users.UserImpl.java
License:Open Source License
@Override public void setPassword(final String password, final String passwordSecret) { if (password == null || "".equals(password)) { // If no password is given, we leave the hashed password empty and we fail during validation. setHashedPassword(""); } else {/*from w ww .j a v a 2 s.co m*/ final String newPassword = new SimpleHash(HASH_ALGORITHM, password, passwordSecret).toString(); setHashedPassword(newPassword); } }
From source file:org.graylog2.users.UserImpl.java
License:Open Source License
@Override public boolean isUserPassword(final String password, final String passwordSecret) { final String oldPasswordHash = new SimpleHash(HASH_ALGORITHM, password, passwordSecret).toString(); return getHashedPassword().equals(oldPasswordHash); }