参考Shiro的自定义的关于授权安全管理器和授权器的设计概念

概要

授权安全管理器继承了授权器,拥有了授权的各种行为,又使用授权器具体实现授权的各种行为。

Authorizer授权器

package com.wjz.core;

public interface Authorizer {

    boolean checkRole(String role);
}

AuthorizingSecurityManager授权安全管理器

package com.wjz.core;

public class AuthorizingSecurityManager implements Authorizer {

    private Authorizer authorizer;
    
    public AuthorizingSecurityManager() {
        authorizer = new ModularRealmAuthorizer();
    }
    
    @Override
    public boolean checkRole(String role) {
        return authorizer.checkRole(role);
    }

}

ModularRealmAuthorizer

package com.wjz.core;

public class ModularRealmAuthorizer implements Authorizer {

    @Override
    public boolean checkRole(String role) {
        if ("admin".equals(role)) {
            return true;
        }
        return false;
    }

}

 

posted @ 2018-05-30 15:01  BINGJJFLY  阅读(323)  评论(0编辑  收藏  举报