Apache Shiro是一個具有許多功能的綜合應用程式安全框架。 下圖顯示了Shiro體系結構,本參考手冊將以類似方式組織:
Shiro目標是什麼?
Shiro開發團隊稱為“應用程式安全的四個基石” - 即:認證,授權,會話管理和加密:
1. 認證: 有時被稱為“登錄”,這是證明用戶的行為(他們說自己是誰)。
2. 授權:訪問控制的過程,即確定“誰”可以訪問“什麼”。
3. 會話管理:管理用戶特定的會話,即使在非Web或EJB應用程式中。
4. 加密:使用加密演算法保持數據安全,同時仍然易於使用。
在不同的應用環境中還有其他特性支持和強化這些問題,特別是:
- Web支持:Shiro的Web支持API有助於保護Web應用程式。
- 緩存:緩存是Apache Shiro API中的第一級,以確保安全操作保持快速和高效。
- 併發性:Apache Shiro支持具有併發功能的多線程應用程式。
- 測試:存在測試支持,可幫助您編寫單元測試和集成測試,並確保代碼按預期得到保障。
- “運行方式”:允許用戶承擔另一個用戶的身份(如果允許)的功能,有時在管理方案中很有用。
- “記住我”:記住用戶在會話中的身份,所以用戶只需要強制登錄即可。