Apache Shiro是一個強大且易用的Java安全框架,執行身份驗證、授權、密碼和會話管理。使用Shiro的易於理解的API,您可以快速、輕鬆地獲得任何應用程式,從最小的移動應用程式到最大的網路和企業應用程式。
基本介紹
- 軟體名稱:Apache Shiro
- 開發商:Apache
- 性質:Java安全框架
Subject代表了當前用戶的安全操作,SecurityManager則管理所有用戶的安全操作。
SecurityManager:它是Shiro框架的核心,典型的Facade模式,Shiro通過SecurityManager來管理內部組件實例,並通過它來提供安全管理的各種服務。
Realm: Realm充當了Shiro與套用安全數據間的“橋樑”或者“連線器”。也就是說,當對用戶執行認證(登錄)和授權(訪問控制)驗證時,Shiro會從套用配置的Realm中查找用戶及其許可權信息。
從這個意義上講,Realm實質上是一個安全相關的DAO:它封裝了數據源的連線細節,並在需要時將相關數據提供給Shiro。當配置Shiro時,你必須至少指定一個Realm,用於認證和(或)授權。配置多個Realm是可以的,但是至少需要一個。
Shiro內置了可以連線大量安全數據源(又名目錄)的Realm,如LDAP、關係資料庫(JDBC)、類似INI的文本配置資源以及屬性檔案等。如果預設的Realm不能滿足需求,你還可以插入代表自定義數據源的自己的Realm實現。