Browse Source

feature-1.0-img:修改网关鉴权策略

feature-1.0-img
‘‘ 3 years ago
parent
commit
7998cb7641
  1. 39
      bnyer-gateway/src/main/java/com/bnyer/gateway/filter/AuthFilter.java

39
bnyer-gateway/src/main/java/com/bnyer/gateway/filter/AuthFilter.java

@ -90,20 +90,20 @@ public class AuthFilter implements GlobalFilter, Ordered
{ {
return unauthorizedResponse(exchange, "令牌已过期或验证不正确!"); return unauthorizedResponse(exchange, "令牌已过期或验证不正确!");
} }
String creatorkey = JwtUtils.getCreatorKey(claims); String creatorPhone = JwtUtils.getCreatorPhone(claims);
boolean islogin = redisService.hasKey(getCreatorTokenKey(creatorkey)); boolean islogin = redisService.hasKey(getCreatorTokenKey(creatorPhone));
if (!islogin) if (!islogin)
{ {
return unauthorizedResponse(exchange, "登录状态已过期"); return unauthorizedResponse(exchange, "登录状态已过期");
} }
String creatorId = JwtUtils.getCreatorId(claims); String creatorId = JwtUtils.getCreatorId(claims);
String creatorPhone = JwtUtils.getCreatorPhone(claims); String creatorKey = JwtUtils.getCreatorKey(claims);
if (StringUtils.isEmpty(creatorId) || StringUtils.isEmpty(creatorPhone)) if (StringUtils.isEmpty(creatorId) || StringUtils.isEmpty(creatorKey))
{ {
return unauthorizedResponse(exchange, "令牌验证失败"); return unauthorizedResponse(exchange, "令牌验证失败");
} }
// 设置用户信息到请求 // 设置用户信息到请求
addHeader(mutate, SecurityConstants.CREATOR_KEY, creatorkey); addHeader(mutate, SecurityConstants.CREATOR_KEY, creatorKey);
addHeader(mutate, SecurityConstants.DETAILS_CREATOR_ID, creatorId); addHeader(mutate, SecurityConstants.DETAILS_CREATOR_ID, creatorId);
addHeader(mutate, SecurityConstants.DETAILS_PHONE, creatorPhone); addHeader(mutate, SecurityConstants.DETAILS_PHONE, creatorPhone);
// 内部请求来源参数清除 // 内部请求来源参数清除
@ -116,21 +116,22 @@ public class AuthFilter implements GlobalFilter, Ordered
{ {
return unauthorizedResponse(exchange, "令牌已过期或验证不正确!"); return unauthorizedResponse(exchange, "令牌已过期或验证不正确!");
} }
String tikTokUserkey = JwtUtils.getTiktokUserKey(claims);
boolean islogin = redisService.hasKey(getTiktokUserTokenKey(tikTokUserkey)); String openId = JwtUtils.getTiktokUserOpenid(claims);
if (!islogin) boolean isLogin = redisService.hasKey(getTiktokUserTokenKey(openId));
if (!isLogin)
{ {
return unauthorizedResponse(exchange, "登录状态已过期"); return unauthorizedResponse(exchange, "登录状态已过期");
} }
String tikTokUserId = JwtUtils.getTikTokUserId(claims); String tikTokUserId = JwtUtils.getTikTokUserId(claims);
String tikTokUserName = JwtUtils.getTikTokUserName(claims); String tikTokUserName = JwtUtils.getTikTokUserName(claims);
String openId = JwtUtils.getTiktokUserOpenid(claims); String tikTokUserKey = JwtUtils.getTiktokUserKey(claims);
if (StringUtils.isEmpty(tikTokUserId) || StringUtils.isEmpty(tikTokUserName) || StringUtils.isEmpty(openId)) if (StringUtils.isEmpty(tikTokUserId) || StringUtils.isEmpty(tikTokUserName) || StringUtils.isEmpty(tikTokUserKey))
{ {
return unauthorizedResponse(exchange, "令牌验证失败"); return unauthorizedResponse(exchange, "令牌验证失败");
} }
// 设置用户信息到请求 // 设置用户信息到请求
addHeader(mutate, SecurityConstants.TIKTOK_USER_KEY, tikTokUserkey); addHeader(mutate, SecurityConstants.TIKTOK_USER_KEY, tikTokUserKey);
addHeader(mutate, SecurityConstants.DETAILS_TIKTOK_USER_ID, tikTokUserId); addHeader(mutate, SecurityConstants.DETAILS_TIKTOK_USER_ID, tikTokUserId);
addHeader(mutate, SecurityConstants.DETAILS_TIKTOK_USERNAME, tikTokUserName); addHeader(mutate, SecurityConstants.DETAILS_TIKTOK_USERNAME, tikTokUserName);
addHeader(mutate, SecurityConstants.DETAILS_TIKTOK_OPENID, openId); addHeader(mutate, SecurityConstants.DETAILS_TIKTOK_OPENID, openId);
@ -144,16 +145,16 @@ public class AuthFilter implements GlobalFilter, Ordered
{ {
return unauthorizedResponse(exchange, "令牌已过期或验证不正确!"); return unauthorizedResponse(exchange, "令牌已过期或验证不正确!");
} }
String wechatUserKey = JwtUtils.getWechatUserKey(claims); String openId = JwtUtils.getWechatUserOpenid(claims);
boolean isLogin = redisService.hasKey(getWechatUserTokenKey(wechatUserKey)); boolean isLogin = redisService.hasKey(getWechatUserTokenKey(openId));
if (!isLogin) if (!isLogin)
{ {
return unauthorizedResponse(exchange, "登录状态已过期"); return unauthorizedResponse(exchange, "登录状态已过期");
} }
String wechatUserId = JwtUtils.getWechatUserId(claims); String wechatUserId = JwtUtils.getWechatUserId(claims);
String wechatUserName = JwtUtils.getWechatUserName(claims); String wechatUserName = JwtUtils.getWechatUserName(claims);
String openId = JwtUtils.getWechatUserOpenid(claims); String wechatUserKey = JwtUtils.getWechatUserKey(claims);
if (StringUtils.isEmpty(wechatUserId) || StringUtils.isEmpty(wechatUserName) || StringUtils.isEmpty(openId)) if (StringUtils.isEmpty(wechatUserId) || StringUtils.isEmpty(wechatUserName) || StringUtils.isEmpty(wechatUserKey))
{ {
return unauthorizedResponse(exchange, "令牌验证失败"); return unauthorizedResponse(exchange, "令牌验证失败");
} }
@ -172,16 +173,16 @@ public class AuthFilter implements GlobalFilter, Ordered
{ {
return unauthorizedResponse(exchange, "令牌已过期或验证不正确!"); return unauthorizedResponse(exchange, "令牌已过期或验证不正确!");
} }
String fhUserKey = JwtUtils.getFhUserKey(claims); String openId = JwtUtils.getFhUserOpenid(claims);
boolean isLogin = redisService.hasKey(getFhUserTokenKey(fhUserKey)); boolean isLogin = redisService.hasKey(getFhUserTokenKey(openId));
if (!isLogin) if (!isLogin)
{ {
return unauthorizedResponse(exchange, "登录状态已过期"); return unauthorizedResponse(exchange, "登录状态已过期");
} }
String fhUserId = JwtUtils.getFhUserId(claims); String fhUserId = JwtUtils.getFhUserId(claims);
String fhUserName = JwtUtils.getFhUserName(claims); String fhUserName = JwtUtils.getFhUserName(claims);
String openId = JwtUtils.getFhUserOpenid(claims); String fhUserKey = JwtUtils.getFhUserKey(claims);
if (StringUtils.isEmpty(fhUserId) || StringUtils.isEmpty(fhUserName) || StringUtils.isEmpty(openId)) if (StringUtils.isEmpty(fhUserId) || StringUtils.isEmpty(fhUserName) || StringUtils.isEmpty(fhUserKey))
{ {
return unauthorizedResponse(exchange, "令牌验证失败"); return unauthorizedResponse(exchange, "令牌验证失败");
} }

Loading…
Cancel
Save