为什么数组中有不符合条件的依旧通过验证
roles中只有“admin”,而rolesOr[“admin”,“admin1”],每次都能通过验证?打印role也只有一个“admin”,这是为什么呢?浏览器,idea,tomcat都重启过了,缓存也清了。
roles中只有“admin”,而rolesOr[“admin”,“admin1”],每次都能通过验证?打印role也只有一个“admin”,这是为什么呢?浏览器,idea,tomcat都重启过了,缓存也清了。
2019-02-22
public class RolesAuthorizationFilter extends AuthorizationFilter {
public boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) throws IOException {
Subject subject = getSubject(request, response);
String[] rolesArray = (String[]) mappedValue;
if (rolesArray == null || rolesArray.length == 0) {
//no roles specified, so nothing to check - allow access.
return true;
}
Set<String> roles = CollectionUtils.asSet(rolesArray);
return subject.hasAllRoles(roles);
}
}
举报