天天看點

shiro(1)-簡介

簡介

apache shiro 是一個功能強大和易于使用的Java安全架構,為開發人員提供一個直覺而全面的的解決方案的認證,授權,加密,會話管理。

在實際應用中,它實作了應用程式的安全管理的各個方面。

shiro的功能

shiro(1)-簡介

apache shiro能做什麼?

支援認證跨一個或多個資料源(LDAP,JDBC,kerberos身份等)

執行授權,基于角色的細粒度的權限控制。

增強的緩存的支援。

支援web或者非web環境,可以在任何單點登入(SSO)或叢集分布式會話中使用。

主要功能是:認證,授權,會話管理和加密。

下載下傳并且使用

1,確定系統内安裝JDK1.5+和maven2.2+。

2,到shiro首頁下載下傳shiro.

3,解壓縮

4,進入到quickstart目錄

5,運作quickstart

執行完成如下圖:

shiro(1)-簡介

使用SecurityUtils.getSubject(),我們可以得到目前正在執行的主題。

得到主題之後,你可以得到他對應的會話資訊

你可以得到http的session資訊,也可以在非web環境中使用,得到相對應的會話資訊。

如果在web應用程式中部署應用,預設情況下,應用将以HttpSession為基礎。在企業級應用中,你在多個應用中可以使用相同的API,無論部署環境。而且使用任何用戶端技術你都可以共享會話資料。

接下來判斷登入資訊

如果正确可以向下執行,如果不正确,就會對不同的業務進行處理。

比如使用者名不正确,密碼不正确,使用者被鎖定的異常,當然也可以使用自定義抛出的異常。

如果登入成功,那麼下一步可以做什麼呢?

提示目前使用者:

接着測試是否還有其它角色

接着測試是否有特定的權限

接着驗證一個非常強大的執行個體級權限

最後是使用程式登出: