|
@@ -44,7 +44,7 @@ public class AuthUtil {
|
|
|
cacheService = SpringContextHolder.getBean(CacheService.class);
|
|
|
List<String> privilegeUrl = cacheService.privilegeUrlCache(PrivilegePropertyEnum.NO_AUTH);
|
|
|
//无需鉴权的url
|
|
|
- int noAuthCount = (int) privilegeUrl.stream().filter(s -> s.equalsIgnoreCase(url)).count();
|
|
|
+ int noAuthCount = Objects.nonNull(privilegeUrl) ? (int) privilegeUrl.stream().filter(s -> s.equalsIgnoreCase(url)).count() : 0;
|
|
|
if (noAuthCount > 0) {
|
|
|
return true;
|
|
|
}
|
|
@@ -148,20 +148,18 @@ public class AuthUtil {
|
|
|
request.setAttribute(SystemConstant.ORG, authBean.getOrg());
|
|
|
|
|
|
//超级系统管理员拥有所有权限
|
|
|
- long count = authBean.getRoleList().stream().filter(s -> s.getType() == RoleTypeEnum.ADMIN).count();
|
|
|
+ int count = Objects.nonNull(authBean) ? (int) authBean.getRoleList().stream().filter(s -> s.getType() == RoleTypeEnum.ADMIN).count() : 0;
|
|
|
if (count > 0) {
|
|
|
return true;
|
|
|
}
|
|
|
//系统公用接口不拦截
|
|
|
List<String> sysUrls = cacheService.privilegeUrlCache(PrivilegePropertyEnum.SYS);
|
|
|
- if (Objects.nonNull(sysUrls)) {
|
|
|
- int sysCount = (int) sysUrls.stream().filter(s -> s.equalsIgnoreCase(url)).count();
|
|
|
- if (sysCount > 0) {
|
|
|
- return true;
|
|
|
- }
|
|
|
+ int sysCount = Objects.nonNull(sysUrls) ? (int) sysUrls.stream().filter(s -> s.equalsIgnoreCase(url)).count() : 0;
|
|
|
+ if (sysCount > 0) {
|
|
|
+ return true;
|
|
|
}
|
|
|
Set<String> urls = authBean.getUrls();
|
|
|
- int privilegeCount = (int) urls.stream().filter(s -> s.equalsIgnoreCase(url)).count();
|
|
|
+ int privilegeCount = Objects.nonNull(urls) ? (int) urls.stream().filter(s -> s.equalsIgnoreCase(url)).count() : 0;
|
|
|
if (privilegeCount == 0) {
|
|
|
log.warn("Authorization faile: url cannot access");
|
|
|
throw ExceptionResultEnum.UN_AUTHORIZATION.exception();
|