使用 OpenAuth.Net 快速搭建 .NET 企業(yè)級(jí)權(quán)限工作流系統(tǒng)
前言
在企業(yè)應(yīng)用開發(fā)中,系統(tǒng)權(quán)限管理和工作流是比較常見的功能。雖說開發(fā)起來難度不大,但從零開始開發(fā)一個(gè)功能完備的權(quán)限管理和工作流系統(tǒng),往往需要投入大量的時(shí)間和精力。今天大姚帶領(lǐng)大家來使用 OpenAuth.Net 快速搭建一套 .NET 企業(yè)級(jí)權(quán)限工作流系統(tǒng),希望可以幫助到有需要的小伙伴。
OpenAuth.Net 介紹
OpenAuth.Net 是一個(gè)基于 .NET 開源免費(fèi)(Apache-2.0 License)的權(quán)限管理及快速開發(fā)框架,.NET 開源最好用的權(quán)限工作流系統(tǒng)。它源于 Martin Fowler 的企業(yè)級(jí)應(yīng)用開發(fā)思想,并結(jié)合了最新的技術(shù)組合,如 SqlSugar、EF、Quartz、AutoFac、WebAPI、Swagger、Mock、NUnit、Vue2/3、Element-ui/plus、IdentityServer 等。該項(xiàng)目架構(gòu)易于擴(kuò)展,文檔齊全且免費(fèi),特別適合中小企業(yè)使用。
- 項(xiàng)目官網(wǎng)地址:http://www.openauth.net.cn
- 詳細(xì)使用文檔:http://doc.openauth.net.cn
- 項(xiàng)目開源地址:https://gitee.com/dotnetchina/OpenAuth.Net
圖片
項(xiàng)目架構(gòu)圖
圖片
項(xiàng)目特點(diǎn)
- 多租戶支持: 支持多租戶,輕松管理多個(gè)客戶的數(shù)據(jù)。
- 規(guī)范的代碼風(fēng)格: 代碼規(guī)范易讀,注釋清晰,方便維護(hù)。采用主流的技術(shù),不做任何多余的封裝。
- 簡(jiǎn)潔易用的代碼生成: 內(nèi)置極易上手的代碼生成器,支持單表、父子表等場(chǎng)景的代碼生成,大大提升編碼效率。
- 動(dòng)態(tài)表單設(shè)計(jì): 支持拖拽組件,快速構(gòu)建表單,無需編寫代碼,即可實(shí)現(xiàn)表單設(shè)計(jì)。
- 可視化流程設(shè)計(jì): 通過可視化流程設(shè)計(jì)器,快速構(gòu)建流程,無需編寫代碼,即可實(shí)現(xiàn)流程設(shè)計(jì)。
- 基于Quartz的定時(shí)任務(wù): 無需開發(fā)人員參與即可配置定時(shí)任務(wù)。可隨時(shí)啟/停,可視化配置 Cron表達(dá)式功能。
- 支持多種數(shù)據(jù)庫(kù)類型: 項(xiàng)目同時(shí)支持 EF、SqlSugar 兩款最流行的 ORM 框架,支持 SQL Server、MySQL、Oracle、PostgreSQL 等多種數(shù)據(jù)庫(kù)。
- 等等等......
源代碼下載
git clone https://gitee.com/dotnetchina/OpenAuth.Net
圖片
??OpenAuth.Net
┣ ??.cursor //cursor rules、MCP配置
┣ ??newdocs //文檔
┣ ??Infrastructure //基礎(chǔ)工具類
┣ ??OpenAuth.Repository //數(shù)據(jù)庫(kù)訪問相關(guān)代碼
┣ ??OpenAuth.App //應(yīng)用邏輯代碼
┣ ??OpenAuth.Identity //IdentityServer4服務(wù)器,提供OAuth服務(wù)
┣ ??OpenAuth.WebApi //WebApi接口站點(diǎn)
┣ ??Vue2 //開源Vue2前端項(xiàng)目
┣ ??數(shù)據(jù)庫(kù)腳本 //數(shù)據(jù)庫(kù)腳本
┣ ??.gitattributes
┣ ??.gitignore
┣ ??LICENSE
┣ ??.cursorignore //cursor codebase index忽略文件
┣ ??Dockerfile //docker文件
┣ ??OpenAuth.Net.sln //解決方案
┗ ??README.md后端源代碼
圖片
前端源代碼
圖片
數(shù)據(jù)庫(kù)腳本
圖片
前后端項(xiàng)目調(diào)用關(guān)系
圖片
后端項(xiàng)目環(huán)境安裝
OpenAuth.Net 當(dāng)前的目標(biāo)框架是:.NET 9,所以在項(xiàng)目運(yùn)行之前我們需要檢查一下當(dāng)前電腦是否安裝了 .NET 9 SDK。
- .NET 9 SDK安裝:https://dotnet.microsoft.com/en-us/download/dotnet/9.0
dotnet --list-sdks
圖片
初始化數(shù)據(jù)庫(kù)腳本
這里我們采用 MySQL 數(shù)據(jù)庫(kù)作為系統(tǒng)的數(shù)據(jù)存儲(chǔ)數(shù)據(jù)庫(kù),首先我們需要初始化系統(tǒng)的 MySQL 腳本。
新建數(shù)據(jù)庫(kù)
新建一個(gè)名為:openauthdb 的數(shù)據(jù)庫(kù):
圖片
初始化數(shù)據(jù)庫(kù)數(shù)據(jù)
圖片
圖片
后端 WebApi 項(xiàng)目運(yùn)行
后端項(xiàng)目數(shù)據(jù)庫(kù)設(shè)置
圖片
運(yùn)行后端 OpenAuth.WebApi
設(shè)置OpenAuth.WebApi為啟動(dòng)項(xiàng)目運(yùn)行:
圖片
圖片

前端項(xiàng)目環(huán)境安裝
Vue 的開發(fā)依賴于 Node.js 環(huán)境,因此我們需要安裝 Node.js(建議安裝最新版本的 Node.js)。
- Node.js 下載地址:https://nodejs.cn/download/current
圖片
環(huán)境檢查:
node --version
圖片
前端項(xiàng)目啟動(dòng)
在 Vs Code 中打開項(xiàng)目
在 Vs Code 打開 OpenAuth.Net\Vue2 前端項(xiàng)目文件夾,如下圖:
圖片
前端項(xiàng)目結(jié)構(gòu):
圖片
安裝項(xiàng)目所有依賴
使用以下命令安裝項(xiàng)目所有依賴(第一次執(zhí)行的時(shí)間有點(diǎn)長(zhǎng),需要慢慢等待):
npm install
圖片

前端項(xiàng)目運(yùn)行
使用下面命令運(yùn)行前端項(xiàng)目:
npm run dev
圖片
項(xiàng)目運(yùn)行效果展示
運(yùn)行 OpenAuth.Net 項(xiàng)目我們可以發(fā)現(xiàn)其實(shí)它已經(jīng)涵蓋了大多數(shù)通用的權(quán)限管理和工作流系統(tǒng)的功能模塊,假如你想要了解更多的項(xiàng)目實(shí)用功能和特性歡迎前往官網(wǎng)地址查看??,別忘了給項(xiàng)目一個(gè)Star支持??。
- 項(xiàng)目官網(wǎng)地址:http://www.openauth.net.cn
- 項(xiàng)目開源地址:https://gitee.com/dotnetchina/OpenAuth.Net
App running at:
- Local: http://localhost:1803/
- Network: http://192.168.1.5:1803/
圖片
圖片





































