From c43b9d04dea89ee0adf731ce46c4f48eed11ffb9 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 18 九月 2023 10:34:48 +0800 Subject: [PATCH] 代码提交 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java | 17 +++++++++++------ 1 files changed, 11 insertions(+), 6 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java index fbedf76..1457d0a 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java @@ -44,10 +44,15 @@ // 閫氳繃鏈嶅姟娉ㄥ唽涓績鑾峰彇缃戝叧鐨勭鍙e彿 @Autowired private DiscoveryClient discoveryClient; - @Value("${user-info.pwd-free-tenant-id}") + // 閰嶇疆鐨勫厤瀵嗙櫥褰曠殑璐﹀彿鎵�灞炵殑绉熸埛id + @Value("${password-free.pwd-free-tenant-id}") + // 閰嶇疆鐨則oken鍦╮edis涓殑鐢熷瓨鏃堕棿 private String pwdFreeTenantId; + @Value("${password-free.token-redis-expire}") + private Long tokenRedisExpire; @Autowired private BladeRedis bladeRedis; + // 缂撳瓨鍚� public static final String PWD_FREE_LOGIN_TOKEN = "pwdFreeLogin:Token:"; private static JwtProperties jwtProperties; @@ -68,17 +73,17 @@ /** * 鍏嶅瘑鐧诲綍锛屾敼鍙樺綋鍓峸ebservice璇锋眰鐨刪eader - * @param username 璐﹀彿 + * @param userName 璐﹀彿 * @return */ @Override - public boolean passwordFreeLogin(String username, ServletRequest servletRequest) throws AuthenticationException { + public boolean passwordFreeLogin(String userName, ServletRequest servletRequest) throws AuthenticationException { //杩涙潵鍏堝垽鏂紦瀛樹腑鏄惁瀛樺湪token // 璇锋眰鏉ヨ嚜宸卞摢涓猧p鍦板潃 HttpServletRequest request = (HttpServletRequest) servletRequest; String ipAddr = request.getRemoteAddr(); // 鍏堝皾璇曚粠缂撳瓨褰撲腑鍙栵紝瀛樺湪灏辩洿鎺ヤ粠缂撳瓨涓幏鍙� - String authToken = bladeRedis.get(PWD_FREE_LOGIN_TOKEN+ipAddr); + String authToken = bladeRedis.get(PWD_FREE_LOGIN_TOKEN+ipAddr+":"+userName); BladeUser user = null; //涓嶅瓨鍦ㄥ氨璇锋眰 if(Func.isEmpty(authToken)){ @@ -91,7 +96,7 @@ headers.set("Tenant-Id", pwdFreeTenantId); //璁剧疆璇锋眰浣撳弬鏁� MultiValueMap<String,String> parameters = new LinkedMultiValueMap<String,String>(); - parameters.add("username",username); + parameters.add("username",userName); parameters.add("grant_type", "passwordfree"); parameters.add("scope", "all"); parameters.add("type", "account"); @@ -112,7 +117,7 @@ // 鎷兼帴token鏍煎紡 authToken = "bearer " + tokenUserObject.getAccess_token(); // 灏唗oken瀛樺叆缂撳瓨褰撲腑,杩囨湡鏃堕棿涓�24灏忔椂 - bladeRedis.setEx(PWD_FREE_LOGIN_TOKEN+ipAddr,"bearer "+tokenUserObject.getAccess_token(),60*60*60*24L); + bladeRedis.setEx(PWD_FREE_LOGIN_TOKEN+ipAddr+":"+userName,"bearer "+tokenUserObject.getAccess_token(),tokenRedisExpire); } // 瑙f瀽token瀛樻斁杩沘ttr涓� String token2 = JwtUtil.getToken(authToken); -- Gitblit v1.9.3