-
springmvc.xml查看全部
-
shiro整體架構
查看全部 -
內置過濾器
查看全部 -
認證過程圖
查看全部 -
整體架構圖
查看全部 -
SUB 主體
Authenticator 認證器(登陸)
Authorizer 授權器(訪問權限)
SessionManager Shiro自己的Session不依賴于Web
SessionDAO?Session操作增刪改查
CacheManager 緩存操作(緩存角色和權限)
Reaims Shiro和數(shù)據(jù)庫直接的一個橋梁
查看全部 -
創(chuàng)建SecurityMananger ->主題授權->SecurityManager授權->Authorizer授權->Realm獲取角色權限數(shù)據(jù)?
查看全部 -
創(chuàng)建SecurutyManager對象-》主題提交認證 -》SecurityManager認證-》Authenticator認證-》realm驗證
查看全部 -
package?com.imooc.test; import?org.apache.shiro.SecurityUtils; import?org.apache.shiro.authc.UsernamePasswordToken; import?org.apache.shiro.mgt.DefaultSecurityManager; import?org.apache.shiro.realm.SimpleAccountRealm; import?org.apache.shiro.subject.Subject; import?org.junit.Before; import?org.junit.Test; /** ?*?測試認證 ?*/ public?class?AutnenticationTest?{ ????SimpleAccountRealm?simpleAccountRealm?=?new?SimpleAccountRealm(); ????@Before ????public?void?addUser(){ ????????simpleAccountRealm.addAccount("dulu","070525"); ????} ????@Test ????public?void?testAuthentication(){ ????????//?1?構建SecurityManager環(huán)境 ????????//?SecurityManager用?authenticate?進行認證??按住ctrl鍵鼠標雙擊?DefaultSecurityManager ????????DefaultSecurityManager?defaultSecurityManager?=?new?DefaultSecurityManager(); ????????defaultSecurityManager.setRealm(simpleAccountRealm);?//注意這一行,視頻中沒有 ????????//?2?主體提交認證請求 ????????SecurityUtils.setSecurityManager(defaultSecurityManager);?//?設置環(huán)境 ????????Subject?subject?=?SecurityUtils.getSubject();??//??獲得主體?這里的?Subject要引入?import?org.apache.shiro.SecurityUtils; ????????UsernamePasswordToken?token?=?new?UsernamePasswordToken("dulu","070525");?//?這里可以寫參數(shù),也可以不寫 ????????subject.login(token); ????????//?輸出是否認證 ????????System.out.println("isAuthenticated:"?+?subject.isAuthenticated()); ????????//?登出 ????????subject.logout(); ????} }
查看全部 -
Shiro整體架構
查看全部 -
需要橋的代碼
查看全部 -
jdbcReam如果要查詢權限,需要設置setPermissionsLookupEnabled(true)才能查詢權限
查看全部 -
使用自定義JDBC
查看全部 -
JDBC Realm
查看全部 -
jdbcRealm查詢權限開關查看全部
舉報
0/150
提交
取消