forked from github/dataease
feat(fix):登陆校验优化
This commit is contained in:
parent
3b8f971796
commit
c3e9157761
@ -18,12 +18,14 @@ import io.dataease.commons.utils.ServletUtils;
|
||||
|
||||
import io.dataease.plugins.xpack.display.dto.response.SysSettingDto;
|
||||
import io.dataease.plugins.xpack.display.service.DisPlayXpackService;*/
|
||||
import io.dataease.i18n.Translator;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -41,11 +43,11 @@ public class AuthServer implements AuthApi {
|
||||
String password = loginDto.getPassword();
|
||||
SysUserEntity user = authUserService.getUserByName(username);
|
||||
|
||||
if (ObjectUtils.isEmpty(user)){
|
||||
throw new RuntimeException("没有该用户!");
|
||||
if (ObjectUtils.isEmpty(user)) {
|
||||
throw new RuntimeException(Translator.get("i18n_id_or_pwd_error"));
|
||||
}
|
||||
if (user.getEnabled()==0){
|
||||
throw new RuntimeException("用户已经失效!");
|
||||
if (user.getEnabled() == 0) {
|
||||
throw new RuntimeException(Translator.get("i18n_id_or_pwd_error"));
|
||||
}
|
||||
String realPwd = user.getPassword();
|
||||
//私钥解密
|
||||
@ -53,10 +55,10 @@ public class AuthServer implements AuthApi {
|
||||
//md5加密
|
||||
pwd = CodingUtil.md5(pwd);
|
||||
|
||||
if (!StringUtils.equals(pwd, realPwd)){
|
||||
throw new RuntimeException("密码错误!");
|
||||
if (!StringUtils.equals(pwd, realPwd)) {
|
||||
throw new RuntimeException(Translator.get("i18n_id_or_pwd_error"));
|
||||
}
|
||||
Map<String,Object> result = new HashMap<>();
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
TokenInfo tokenInfo = TokenInfo.builder().userId(user.getUserId()).username(username).lastLoginTime(System.currentTimeMillis()).build();
|
||||
String token = JWTUtils.sign(tokenInfo, realPwd);
|
||||
// 记录token操作时间
|
||||
@ -68,7 +70,7 @@ public class AuthServer implements AuthApi {
|
||||
|
||||
@Override
|
||||
public CurrentUserDto userInfo() {
|
||||
CurrentUserDto userDto = (CurrentUserDto)SecurityUtils.getSubject().getPrincipal();
|
||||
CurrentUserDto userDto = (CurrentUserDto) SecurityUtils.getSubject().getPrincipal();
|
||||
if (ObjectUtils.isEmpty(userDto)) {
|
||||
String token = ServletUtils.getToken();
|
||||
Long userId = JWTUtils.tokenInfoByToken(token).getUserId();
|
||||
@ -84,7 +86,7 @@ public class AuthServer implements AuthApi {
|
||||
}
|
||||
|
||||
@Override
|
||||
public String logout(){
|
||||
public String logout() {
|
||||
String token = ServletUtils.getToken();
|
||||
Long userId = JWTUtils.tokenInfoByToken(token).getUserId();
|
||||
authUserService.clearCache(userId);
|
||||
|
@ -14,7 +14,7 @@ public class IndexController {
|
||||
return "index.html";
|
||||
}
|
||||
|
||||
@GetMapping(value = "/login")
|
||||
@GetMapping(value = "/llogin")
|
||||
public String login() {
|
||||
return "index.html";
|
||||
}
|
||||
|
@ -247,3 +247,4 @@ i18n_datasource_check_fail=Invalid,please check config
|
||||
i18n_not_find_user=Can not find user.
|
||||
i18n_sql_not_empty=SQL can not be empty.
|
||||
i18n_task_name_repeat=Name is used in same data set
|
||||
i18n_id_or_pwd_error=Invalid ID or password
|
@ -249,3 +249,4 @@ i18n_datasource_check_fail=校验失败,请检查配置信息
|
||||
i18n_not_find_user=未找到用户
|
||||
i18n_sql_not_empty=SQL 不能为空
|
||||
i18n_task_name_repeat=同一数据集下任务名称已被使用
|
||||
i18n_id_or_pwd_error=无效的ID或密码
|
@ -249,3 +249,4 @@ i18n_datasource_check_fail=校驗失敗,請檢查配置信息
|
||||
i18n_not_find_user=未找到用戶
|
||||
i18n_sql_not_empty=SQL 不能為空
|
||||
i18n_task_name_repeat=同一數據集下任務名稱已被使用
|
||||
i18n_id_or_pwd_error=無效的ID或密碼
|
@ -283,7 +283,9 @@ export default {
|
||||
},
|
||||
datasource: 'Datasource',
|
||||
char_can_not_more_50: 'Can not more 50 char',
|
||||
share_success: 'Share Success'
|
||||
share_success: 'Share Success',
|
||||
input_id: 'Please input ID',
|
||||
input_pwd: 'Please input password'
|
||||
},
|
||||
documentation: {
|
||||
documentation: 'Documentation',
|
||||
|
@ -283,7 +283,9 @@ export default {
|
||||
},
|
||||
datasource: '數據源',
|
||||
char_can_not_more_50: '不能超過50字符',
|
||||
share_success: '分享成功'
|
||||
share_success: '分享成功',
|
||||
input_id: '請輸入ID',
|
||||
input_pwd: '請輸入密碼'
|
||||
},
|
||||
documentation: {
|
||||
documentation: '文檔',
|
||||
|
@ -283,7 +283,9 @@ export default {
|
||||
},
|
||||
datasource: '数据源',
|
||||
char_can_not_more_50: '不能超过50字符',
|
||||
share_success: '分享成功'
|
||||
share_success: '分享成功',
|
||||
input_id: '请输入ID',
|
||||
input_pwd: '请输入密码'
|
||||
},
|
||||
documentation: {
|
||||
documentation: '文档',
|
||||
|
@ -84,8 +84,8 @@ export default {
|
||||
password: ''
|
||||
},
|
||||
loginRules: {
|
||||
username: [{ required: true, trigger: 'blur', validator: validateUsername }],
|
||||
password: [{ required: true, trigger: 'blur', validator: validatePassword }]
|
||||
username: [{ required: true, trigger: 'blur', message: this.$t('commons.input_id') }],
|
||||
password: [{ required: true, trigger: 'blur', message: this.$t('commons.input_pwd') }]
|
||||
},
|
||||
loading: false,
|
||||
passwordType: 'password',
|
||||
|
Loading…
Reference in New Issue
Block a user