shiro学习27-shiro提供的filter-RoleAuthorizationFilter

这个是根据角色来判断某个操作能否进行,在配置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);//当前用户是否有需要的角色
}

这个之后在可以把角色定死的情况下才能使用,如果你有这样的情况可以使用这个类。

猜你喜欢

转载自suichangkele.iteye.com/blog/2277098