这个是根据角色来判断某个操作能否进行,在配置ShiroFilterFactoryBean的时候每个filter后面的[role1,role2]被当做是角色来处理。
@SuppressWarnings({"unchecked"}) 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) { return true; } Set<String> roles = CollectionUtils.asSet(rolesArray); return subject.hasAllRoles(roles);//当前用户是否有需要的角色 }
这个之后在可以把角色定死的情况下才能使用,如果你有这样的情况可以使用这个类。