mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-11 03:58:14 +00:00
(improvement)(auth) Optimize the code for login authentication. (#1214)
This commit is contained in:
@@ -13,9 +13,6 @@ public class UserConstants {
|
|||||||
public static final String TOKEN_USER_EMAIL = "token_user_email";
|
public static final String TOKEN_USER_EMAIL = "token_user_email";
|
||||||
|
|
||||||
public static final String TOKEN_IS_ADMIN = "token_is_admin";
|
public static final String TOKEN_IS_ADMIN = "token_is_admin";
|
||||||
|
|
||||||
public static final String TOKEN_ALGORITHM = "HS512";
|
|
||||||
|
|
||||||
public static final String TOKEN_CREATE_TIME = "token_create_time";
|
public static final String TOKEN_CREATE_TIME = "token_create_time";
|
||||||
|
|
||||||
public static final String TOKEN_PREFIX = "Bearer";
|
public static final String TOKEN_PREFIX = "Bearer";
|
||||||
|
|||||||
@@ -80,7 +80,6 @@ public class DefaultUserAdaptor implements UserAdaptor {
|
|||||||
try {
|
try {
|
||||||
byte[] salt = AESEncryptionUtil.generateSalt(userDO.getName());
|
byte[] salt = AESEncryptionUtil.generateSalt(userDO.getName());
|
||||||
userDO.setSalt(AESEncryptionUtil.getStringFromBytes(salt));
|
userDO.setSalt(AESEncryptionUtil.getStringFromBytes(salt));
|
||||||
log.info("salt: " + userDO.getSalt());
|
|
||||||
userDO.setPassword(AESEncryptionUtil.encrypt(userReq.getPassword(), salt));
|
userDO.setPassword(AESEncryptionUtil.encrypt(userReq.getPassword(), salt));
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException("password encrypt error, please try again");
|
throw new RuntimeException("password encrypt error, please try again");
|
||||||
@@ -91,13 +90,8 @@ public class DefaultUserAdaptor implements UserAdaptor {
|
|||||||
@Override
|
@Override
|
||||||
public String login(UserReq userReq, HttpServletRequest request) {
|
public String login(UserReq userReq, HttpServletRequest request) {
|
||||||
UserTokenUtils userTokenUtils = ContextUtils.getBean(UserTokenUtils.class);
|
UserTokenUtils userTokenUtils = ContextUtils.getBean(UserTokenUtils.class);
|
||||||
try {
|
String appKey = userTokenUtils.getAppKey(request);
|
||||||
UserWithPassword user = getUserWithPassword(userReq);
|
return login(userReq, appKey);
|
||||||
return userTokenUtils.generateToken(user, request);
|
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("", e);
|
|
||||||
throw new RuntimeException("password encrypt error, please try again");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -107,6 +101,7 @@ public class DefaultUserAdaptor implements UserAdaptor {
|
|||||||
UserWithPassword user = getUserWithPassword(userReq);
|
UserWithPassword user = getUserWithPassword(userReq);
|
||||||
return userTokenUtils.generateToken(user, appKey);
|
return userTokenUtils.generateToken(user, appKey);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
log.error("", e);
|
||||||
throw new RuntimeException("password encrypt error, please try again");
|
throw new RuntimeException("password encrypt error, please try again");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -162,7 +162,7 @@ public class UserTokenUtils {
|
|||||||
return secret;
|
return secret;
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getAppKey(HttpServletRequest request) {
|
public String getAppKey(HttpServletRequest request) {
|
||||||
String appKey = request.getHeader(authenticationConfig.getTokenHttpHeaderAppKey());
|
String appKey = request.getHeader(authenticationConfig.getTokenHttpHeaderAppKey());
|
||||||
if (StringUtils.isBlank(appKey)) {
|
if (StringUtils.isBlank(appKey)) {
|
||||||
appKey = authenticationConfig.getTokenDefaultAppKey();
|
appKey = authenticationConfig.getTokenDefaultAppKey();
|
||||||
|
|||||||
Reference in New Issue
Block a user