天天看點

SpringBoot權限控制

權限控制是一個比較重要的知識點。

先講一下相關理論知識,如圖:

SpringBoot權限控制

每次發送請求都會調用到controller,而controller又會調用subject,每個使用者對應一個subject(subject包含了session),且subject會負責和shiro互動,securityManager管理了Realm,而Realm可以進行登入驗證,可以對使用者操作付權限。

通過SpringBoot做權限控制的步驟如下:

1、首先要引入相應的包。

除了要引入其他基本功能的包,還要引入和權限控制相關的包,pom代碼如下:

2、自定義Realm 繼承自AuthorizingRealm:

3、密碼校驗器:

4、建立權限管理類:

這一步首先需要定義一個方法傳回ShiroFilterFactoryBean,ShiroFilterFactoryBean對象要設定登入的URL,設定哪些路徑是可以匿名通路,哪些是需要權限通路的。

然後配置核心安全事務管理器,傳回SecurityManager對象:

設定密碼比較器:

配置自定義的權限登入器:

總體代碼:

上一篇: 檔案上傳
下一篇: Spring Boot