1. 增加Flyway DB Migration,支持版本化管理數據庫
2. 完善API安全性:權限控制,訪問頻率限制
3. 停用sys系列接口,如果需要使用,就要完善權限控制
4. 禁用在線表單開發功能,停用online系列接口
5. 關閉Swagger接口文檔
6. 增加文件訪問權限控制,可以使用OSS云存儲私有鏈接方案
7. 修改初始化SQL設置的admin默認密碼
8. 優化API調用日志,配置獨立的logServer
9. 結合業務完善數據庫事務管理
JeecgBoot低代碼開發框架,基于代碼生成器,快速開發企業信息應用系統。
開源項目:代碼托管在Github和Gitee,國內用戶使用Gitee下載速度快
系統環境:Win10/Ubuntu,JDK8,maven,node,docker
依賴服務:Docker,MySQL8,Redis5
1. 增加Flyway DB Migration,支持版本化管理數據庫
JeecgBoot提供了初始化SQL腳本,然而在實際項目中,經常需要新增數據表,或者對已有數據表進行調整,比如增加提現密碼。
此時不可避免地需要對SQL腳本進行管理,推薦使用Flyway,SpringBoot集成起來非常便捷。
1) Pom.xml增加依賴:
2) Application.yml增加配置:
3) resources目錄下增加SQL腳本:
2. 完善API安全性:權限控制,訪問頻率限制
JeecgBoot框架沒有對API增加完善的權限控制,比如讀取用戶信息、部門信息,也沒有增加訪問頻率控制。
增加修飾符@AccessLimited,配置攔截器,統一完善API安全機制。
3. 停用sys系列接口,如果需要使用,就要完善權限控制
JeecgBoot為后臺管理系統提供了豐富的接口,可以操作所有數據表,功能強大。如果在生產環境中繼續使用這些接口,那么就需要完善權限控制,實現方法可以參考上一節。
4. 禁用在線表單開發功能,停用online系列接口
JeecgBoot提供的在線表單開發功能非常強大實用,然而在部署生產環境時,一定不要忘記屏蔽,否則扒庫、刪庫都不在話下,看你的運氣了。
5. 關閉Swagger接口文檔
只需要在配置文件中改動一點,就不至于把所有接口公布于眾了。
6. 增加文件訪問權限控制,可以使用OSS云存儲私有鏈接方案
JeecgBoot提供的文件訪問路徑,并沒有增加權限控制,所以需要結合實際存儲方式,疊加權限實現方案。
羚駕科技業務系統使用阿里云OSS存儲文件,請求接口時,判斷是否滿足權限要求,然后生成臨時地址,并且設置有效期。
7. 修改初始化SQL設置的admin默認密碼
運行初始化SQL腳本后,超級管理員默認密碼123456,別忘記改了,事情雖小,影響卻大。
在初始化SQL腳本基礎上,增加一個修改密碼的腳本。
8. 優化API調用日志,配置獨立的logServer
JeecgBoot提供了@AutoLog修飾符,然后將日志信息保存到了數據表sys_log中,這個方案在實際生產環境中容易造成大量的日志信息占用數據庫存儲空間,甚至影響到數據庫性能。
9. 結合業務完善數據庫事務處理
實際業務系統需要完整的數據庫事務管理,按照需求實現。
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。