Apache Shiro 是ASF旗下的開源軟體(Shiro發音為“shee-roh”,日文“堡壘(Castle)”的意思),提供了一個強大而靈活的安全框架。可為任何應用程式提供安全保障— 從命令列應用、行動應用程式到大型網路及企業應用程式。
(推薦教學:apache)
Apache Shiro提供了認證、授權、加密和會話管理功能,將複雜的問題隱藏起來,提供清晰直覺的API使開發者可以輕鬆地開發自己的程式安全程式碼。且在實現此目標時無須依賴第三方的框架、容器或服務,當然也能做到與這些環境的整合,使其在任何環境下都可拿來使用。
Shiro將目標集中於Shiro開發團隊所稱的「四大安全基石」-認證(Authentication)、授權(Authorization)、會話管理(Session Management)和加密(Cryptography):
認證(Authentication):使用者身分識別。有時可看作為“登入(login)”,它是使用者證明自己是誰的一個行為。
授權(Authorization):存取控制過程,好比決定「認證(who)」可以存取「什麼(what)」.
會話管理(SessionManagement):管理使用者的會話(sessions ),甚至在沒有WEB或EJB容器的環境中。管理使用者與時間相關的狀態。
加密(Cryptography):使用加密演算法保護資料更加安全,防止資料被偷窺。
此外還有一些附加的功能進行支援和加強,例如:
Web支援:利用Shiro的web支援API可以輕鬆實現web程式安全;
# Caching:Caching在Apache Shiro的API中是一等公民,確保安全認證的動作快速且有效。
並發(Concurrency):Apache Shiro支援多執行緒;
測試(Testing):支援測試,幫助你開發單元和綜合測試程式確保你的程式碼如你所預期的進行安全認證。
「Run As」:允許使用者使用其他使用者身分(如果被允許),這在執行某些管理角本中非常有用。
「Remember Me」:在整個會話週期中(sessions)記住使用者的身份,使用者只需要在程式強制要求登入的情況下才需要登入。
以上是Apache Shiro介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!