Apache Shiro是一個強(qiáng)大靈活的開源安全框架,可以完全處理身份驗(yàn)證,授權(quán),企業(yè)會話管理和加密。
Apache Shiro的首要目標(biāo)是易于使用和理解。 安全有時可能非常復(fù)雜,甚至痛苦,但使用Shiro后就不一定是這樣了。 框架應(yīng)該在可能的情況下掩蓋復(fù)雜性,并展示一個干凈,直觀的API,這簡化了開發(fā)人員工作,并使應(yīng)用程序更安全。
這里有一些可以使用Apache Shiro完全的應(yīng)用場景:
1
個或多個用戶安全數(shù)據(jù)的數(shù)據(jù)源,并將此全部顯示為單個復(fù)合用戶的“視圖”。Shiro嘗試為所有應(yīng)用程序環(huán)境實(shí)現(xiàn)這些目標(biāo) - 從最簡單的命令行應(yīng)用程序到最大的企業(yè)應(yīng)用程序,而不強(qiáng)制依賴于其他第三方框架,容器或應(yīng)用程序服務(wù)器。 當(dāng)然,該項(xiàng)目(Shiro)旨在盡可能地集成到這個Shiro環(huán)境中,從而可以在任何環(huán)境中想用即用。
Apache Shiro是一個具有許多功能的綜合應(yīng)用程序安全框架。 下圖顯示了Shiro體系結(jié)構(gòu),本參考手冊將以類似方式組織:
Shiro目標(biāo)是什么?
Shiro開發(fā)團(tuán)隊(duì)稱為“應(yīng)用程序安全的四個基石” - 即:認(rèn)證,授權(quán),會話管理和加密:
1. 認(rèn)證: 有時被稱為“登錄”,這是證明用戶的行為(他們說自己是誰)。
2. 授權(quán):訪問控制的過程,即確定“誰”可以訪問“什么”。
3. 會話管理:管理用戶特定的會話,即使在非Web或EJB應(yīng)用程序中。
4. 加密:使用加密算法保持?jǐn)?shù)據(jù)安全,同時仍然易于使用。
在不同的應(yīng)用環(huán)境中還有其他特性支持和強(qiáng)化這些問題,特別是: