# # 安全理論
軟件中安全保護的作用和目的是什麼?
讓資源被正確的人正常的訪問。
# # 安全防護應該從一下幾個方面
訪問控制 :比如 shiro
安全存儲:比如 一個數據需要加密,比如數據需要備份
安全傳輸:SSL,HTTPS
# # 權限建模
一句話,就是給不同的角色分配不同的權限。通過給用戶賦予角色的方式,來進行訪問權限的控制。不同的可以有不同的控制管理。
舉一個最簡單的例子,如果熟悉linux 的話,會有root 用戶,和普通用戶。
# # 訪問控制實施流程
# # web安全框架
# # shiro 基本概念
再來看一下相關的術語:
這幾個是最爲關鍵,也就是最主要的。訪問統一到 SecurityManager 上去,然後需要認證,然後 Realm 是在存儲這些安全信息的,比方說什麼角色能訪問什麼,而Authroizer 是用來鑑權的,就是鑑定這個用戶是什麼角色,是否擁有相應去權限。
# # shiro 的應用詳解 和 springboot 集成
具體的使用,就是一個些配置文件的問題了,這篇文章不做過多的解釋了。
# # shiro 中優秀的設計思想
確切的說應該是很多框架的設計思想,這是我們應該注意的,我們應該學習的。
從這個圖中,我們可以看到是 認證的統一入口是 securityManager ,最上邊的三個,分別定義了不同的功能,接着再往下走,通過一層一層的繼承關係,來實現功能的疊加,直到最後形成一個用戶直接可用的 DefaultSecurityManager ,很像是生成器模式做的事,但是又不是,因爲它沒有在操作同一個對象。