springboot整合shiro(未完稿)

什麼事shiro: 一個強大且易用的Java安全框架,執行身份驗證、授權、密碼和會話管理。使用Shiro的易於理解的API,可以快速、輕鬆地獲得任何應用程序,從最小的移動應用程序到最大的網絡和企業應用程序。
核心組件:Subject, SecurityManager 和 Realms.
Subject:即“當前操作用戶”。Subject這一概念並不僅僅指人
SecurityManager:它是Shiro框架的核心,管理所有用戶的安全操作
Realm:Shiro與應用安全數據間的“橋樑”或者“連接器”。當對用戶執行認證(登錄)和授權(訪問控制)驗證時,Shiro會從應用配置的Realm中查找用戶及其權限信息。
  Shiro內置了可以連接大量安全數據源(又名目錄)的Realm,如LDAP、關係數據庫(JDBC)、類似INI的文本配置資源以及屬性文件等。如果缺省的Realm不能滿足需求,你還可以插入代表自定義數據源的自己的Realm實現。

怎麼用:
對象創建

public class ShiroFilterFactoryBean implements FactoryBean, BeanPostProcessor {

    private static transient final Logger log = LoggerFactory.getLogger(ShiroFilterFactoryBean.class);

    private SecurityManager securityManager;//安全管理器

    private Map<String, Filter> filters;//過濾集合

    private Map<String, String> filterChainDefinitionMap; //urlPathExpression_to_comma-delimited-filter-chain-definition

    private String loginUrl;//登錄鏈接
    private String successUrl;//登錄成功鏈接
    private String unauthorizedUrl;//不成功鏈接,其實走到這裏已經可以確定這個過濾器不符合項目要求了

    private AbstractShiroFilter instance;

    public ShiroFilterFactoryBean() {
        this.filters = new LinkedHashMap<String, Filter>();
        this.filterChainDefinitionMap = new LinkedHashMap<String, String>(); //order matters!
    }

關於多對多關聯查詢:先得到set遍歷取出所要的對象,再由對象屬性具體查詢
關於shiroConfig下實例化securityManager總是自動導出java.lang.securityManager:老老實實寫全名

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章