| | |
| | | public boolean doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info) { |
| | | ShiroToken usernamePasswordToken = (ShiroToken) token; |
| | | SystemUser queryUserDto = new SystemUser(); |
| | | queryUserDto.setUsername(usernamePasswordToken.getUsername()); |
| | | queryUserDto.setDeleted(Boolean.FALSE); |
| | | if(!usernamePasswordToken.isNeedPassword()){ |
| | | queryUserDto.setMobile(usernamePasswordToken.getUsername()); |
| | | SystemUser systemUser = systemUserService.findOne(queryUserDto); |
| | | if (systemUser == null) { |
| | | return Boolean.FALSE; |
| | | } |
| | | if(!usernamePasswordToken.isNeedPassword()){ |
| | | return Boolean.TRUE; |
| | | } |
| | | queryUserDto.setUsername(usernamePasswordToken.getUsername()); |
| | | SystemUser systemUser = systemUserService.findOne(queryUserDto); |
| | | if (systemUser == null) { |
| | | return Boolean.FALSE; |
| | | } |
| | | |
| | | // 加密密码 |
| | | String pwd = Utils.Secure.encryptPassword(new String(usernamePasswordToken.getPassword()), systemUser.getSalt()); |
| | | // 比较密码 |