Commit cd4e6229 authored by cy's avatar cy

Merge remote-tracking branch 'origin/master'

parents c016bdf5 983011c5
......@@ -97,11 +97,13 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/upload_flowChart/**", "anon");//图片地址
filterChainDefinitionMap.put("/webSocket/**", "anon");//socket
filterChainDefinitionMap.put("/message/**", "anon");//消息推送接口
filterChainDefinitionMap.put("/pay/**", "anon");
filterChainDefinitionMap.put("/pay/aliPayCallBack.do", "anon");//支付宝支付回调接口
filterChainDefinitionMap.put("/pay/wxPayCallBack.do", "anon");//微信支付回调接口
filterChainDefinitionMap.put("/**", "authc");
filterChainDefinitionMap.put("/account/**", "kickout");
filterChainDefinitionMap.put("/banner/**", "kickout");
filterChainDefinitionMap.put("/pic/**", "kickout");
filterChainDefinitionMap.put("/pay/**", "kickout");
filterChainDefinitionMap.put("/school/**", "kickout");
filterChainDefinitionMap.put("/price/**", "kickout");
filterChainDefinitionMap.put("/profession/**", "kickout");
......
......@@ -138,8 +138,10 @@ public class KickoutSessionControlFilter extends AccessControlFilter{
boolean result = null != request.getHeader("identity") && request.getHeader("identity").equals("miniprogram");
boolean result1 = url.indexOf("/login")!=-1 || url.indexOf("/user/valid")!=-1 || url.indexOf("/user/sendSms")!=-1;
boolean resultPay=url.indexOf("pay/aliPayCallBack.do")!=-1 || url.indexOf("pay/wxPayCallBack.do")!=-1;
boolean result2=url.indexOf("/scheme/download")!=-1 || url.indexOf("/scheme/excel/template")!=-1;
boolean result3=url.indexOf("/scheme/record/export")!=-1 || url.indexOf("/scheme/record/createExcel")!=-1;
log.info("KickoutSessionControlFilter ifFilter url :{} , resultPay {}",url,resultPay);
return result || result1 || resultPay;
return result || result1 || resultPay || result2 || result3;
}
......
package cn.wisenergy.service.shir.util;
import cn.wisenergy.service.util.UserToken;
import com.itextpdf.text.log.Logger;
import com.itextpdf.text.log.LoggerFactory;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authc.AuthenticationException;
import org.apache.shiro.authc.AuthenticationInfo;
import org.apache.shiro.authc.AuthenticationToken;
......@@ -12,13 +11,13 @@ import org.apache.shiro.realm.Realm;
import java.util.ArrayList;
import java.util.Collection;
@Slf4j
public class UserModularRealmAuthenticator extends ModularRealmAuthenticator {
private static final Logger logger = LoggerFactory.getLogger(UserModularRealmAuthenticator.class);
@Override
protected AuthenticationInfo doAuthenticate(AuthenticationToken authenticationToken)
throws AuthenticationException {
logger.info("UserModularRealmAuthenticator:method doAuthenticate() execute ");
log.info("UserModularRealmAuthenticator:method doAuthenticate() execute ");
// 判断getRealms()是否返回为空
assertRealmsConfigured();
// 强制转换回自定义的CustomizedToken
......@@ -30,17 +29,17 @@ public class UserModularRealmAuthenticator extends ModularRealmAuthenticator {
// 登录类型对应的所有Realm
Collection<Realm> typeRealms = new ArrayList<>();
for (Realm realm : realms) {
if (realm.getName().contains(loginType));
typeRealms.add(realm);
if (realm.getName().toLowerCase().contains(loginType.toLowerCase())){
typeRealms.add(realm);
}
}
// 判断是单Realm还是多Realm
if (typeRealms.size() == 1){
logger.info("doSingleRealmAuthentication() execute ");
log.info("doSingleRealmAuthentication() execute ");
return doSingleRealmAuthentication(((ArrayList<Realm>) typeRealms).get(0), userToken);
}
else{
logger.info("doMultiRealmAuthentication() execute ");
}else{
log.info("doMultiRealmAuthentication() execute ");
return doMultiRealmAuthentication(typeRealms, userToken);
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment