簡介
apache shiro 是一個功能強大和易于使用的Java安全架構,為開發人員提供一個直覺而全面的的解決方案的認證,授權,加密,會話管理。
在實際應用中,它實作了應用程式的安全管理的各個方面。
shiro的功能

apache shiro能做什麼?
支援認證跨一個或多個資料源(LDAP,JDBC,kerberos身份等)
執行授權,基于角色的細粒度的權限控制。
增強的緩存的支援。
支援web或者非web環境,可以在任何單點登入(SSO)或叢集分布式會話中使用。
主要功能是:認證,授權,會話管理和加密。
下載下傳并且使用
1,確定系統内安裝JDK1.5+和maven2.2+。
2,到shiro首頁下載下傳shiro.
3,解壓縮
4,進入到quickstart目錄
5,運作quickstart
執行完成如下圖:
使用SecurityUtils.getSubject(),我們可以得到目前正在執行的主題。
得到主題之後,你可以得到他對應的會話資訊
你可以得到http的session資訊,也可以在非web環境中使用,得到相對應的會話資訊。
如果在web應用程式中部署應用,預設情況下,應用将以HttpSession為基礎。在企業級應用中,你在多個應用中可以使用相同的API,無論部署環境。而且使用任何用戶端技術你都可以共享會話資料。
接下來判斷登入資訊
如果正确可以向下執行,如果不正确,就會對不同的業務進行處理。
比如使用者名不正确,密碼不正确,使用者被鎖定的異常,當然也可以使用自定義抛出的異常。
如果登入成功,那麼下一步可以做什麼呢?
提示目前使用者:
接着測試是否還有其它角色
接着測試是否有特定的權限
接着驗證一個非常強大的執行個體級權限
最後是使用程式登出: