微吼云上線多路互動直播服務 加速多場景互動直播落地
862
2025-03-31
一、?軟件介紹
Apache Shiro是一個強大且易用的Java安全框架,執行身份驗證、授權、密碼和會話管理。使用Shiro的易于理解的API,您可以快速、輕松地獲得任何應用程序,從最小的移動應用程序到最大的網絡和企業應用程序。
三個核心組件:Subject, SecurityManager 和 Realms.
Subject:即“當前操作用戶”。但是,在Shiro中,Subject這一概念并不僅僅指人,也可以是第三方進程、后臺帳戶(Daemon Account)或其他類似事物。它僅僅意味著“當前跟軟件交互的東西”。
Subject代表了當前用戶的安全操作,SecurityManager則管理所有用戶的安全操作。
SecurityManager:它是Shiro框架的核心,典型的Facade模式,Shiro通過SecurityManager來管理內部組件實例,并通過它來提供安全管理的各種服務。
Realm: Realm充當了Shiro與應用安全數據間的“橋梁”或者“連接器”。也就是說,當對用戶執行認證(登錄)和授權(訪問控制)驗證時,Shiro會從應用配置的Realm中查找用戶及其權限信息。
從這個意義上講,Realm實質上是一個安全相關的DAO:它封裝了數據源的連接細節,并在需要時將相關數據提供給Shiro。當配置Shiro時,你必須至少指定一個Realm,用于認證和(或)授權。配置多個Realm是可以的,但是至少需要一個。
Shiro內置了可以連接大量安全數據源(又名目錄)的Realm,如LDAP、關系數據庫(JDBC)、類似INI的文本配置資源以及屬性文件等。如果缺省的Realm不能滿足需求,你還可以插入代表自定義數據源的自己的Realm實現。
二、?支持的操作系統
經過華為云嚴格實測,以下操作系統在鯤鵬生態中可以完整運行Varnish的全部功能:
CentOS7.6
1、進入shiro官網:?http://shiro.apache.org/
2、點擊下圖中的Download
四、?編譯與測試環境
本文選用華為鯤鵬云服務器ECS KC1實例做測試,KC1實例的處理器為兼容ARMv8指令集的鯤鵬920。詳細規格如下:
類別
子項
版本
云主機配置
ECS實例類型
kc1.large.4
ECS配置
4U16GB
EVS
高IO(80GB)
云OS
Kernel
4.18.0
五、?編譯安裝與測試
1?依賴安裝
Java環境。
2?編譯安裝
1)?下載shiro-x.x.x.jar 到本地,并且將shiro類庫引入到項目中:
設置用戶登錄后的權限,例子: public?void?onLoginSuccess(PrincipalCollection?principals)?{????super.onLoginSuccess(principals);????User?user?=?UserUtils.getUser();????this.getUserService().updateUserLoginInfo(user);????LogUtils.saveLog(user,?ServletUtils.getRequest(),?"系統登錄",?"loginLogout");}
3?驗證測試
說明:測試程序已打包到Tomcat下webapps的ROOT目錄下,所以啟動Tomcat后就可以訪問項目了。
1)?切換到Tomcat所在的目錄:
cd?/opt/apache-tomcat-8.0.35/bin
2)?給執行的shell文件添加權限,否則執行時無法啟動:
chmod?-R?755?startup.sh chmod?-R?755?catalina.sh
3)?啟動Tomcat
./startup.sh
4)?到Tomcat下的logs目錄,查詢執行日志catalina.out,執行結果如下,項目啟動成功:
...... 10-15?14:05:12.305?DEBUG?[com.jeesite.common.beetl.BeetlUtils]?-?Loading?beetl?config:?[classpath:/config/beetl-core.properties,?classpath:/config/beetl.properties] 10-15?14:05:13.765?INFO??[com.jeesite.modules.config.Application]?-?Started?Application?in?11.52?seconds?(JVM?running?for?17.428) 15-Oct-2019?14:05:13.994?INFO?[localhost-startStop-1]?org.apache.catalina.startup.HostConfig.deployDirectory?Deployment?of?web?application?directory?/opt/apache-tomcat-8.0.35/webapps/ROOT?has?finished?in?16,019?ms 15-Oct-2019?14:05:13.998?INFO?[main]?org.apache.coyote.AbstractProtocol.start?Starting?ProtocolHandler?["http-nio-8080"] 15-Oct-2019?14:05:14.003?INFO?[main]?org.apache.coyote.AbstractProtocol.start?Starting?ProtocolHandler?["ajp-nio-8009"] 15-Oct-2019?14:05:14.004?INFO?[main]?org.apache.catalina.startup.Catalina.start?Server?startup?in?16061?ms
5)?訪問地址http://localhost:8080/ds ?或者用命令curl http://localhost:8080/ds/login?就可以看見返回的頁面的html代碼了。通過不同的用戶登錄后,所展示的用戶權限是不一樣的,主頁所顯示內容就是有區別的。
4?問題總結
無
六、?聲明
本文檔中的軟件包均來自軟件官網,安裝文檔部分參考官網的安裝方法,本軟件測試環境為華為鯤鵬云ARM服務器,具體配置信息參照《編譯與測試環境》部分。
本文檔中的軟件安裝測試基于華為鯤鵬云ARM服務器環境測試,如在使用本文檔的安裝方法進行安裝過程中,可能由于系統版本、軟件依賴或其他原因造成軟件安裝不成功,請自行解決或聯系我們,請事先備份相關重要數據、資料。
使用文檔風險由用戶自行承擔,在適用法律允許的最大范圍內,對因使用或不能使用本文檔所產生的損害及風險,包括但不限于直接或間接的個人損害、商業贏利的喪失、貿易中斷、商業信息的丟失或任何其它經濟損失,我司不承擔任何責任。
我司不擔保所提供的軟件功能及服務一定能滿足用戶的要求,也不擔保服務不會中斷,對服務的及時性、安全性、真實性、準確性都不作擔保。
鯤鵬
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。