使用 OpenAuth.Net 快速搭建 .NET 企業(yè)級權(quán)限工作流系統(tǒng)
前言
在企業(yè)應(yīng)用開發(fā)中,系統(tǒng)權(quán)限管理和工作流是比較常見的功能。雖說開發(fā)起來難度不大,但從零開始開發(fā)一個功能完備的權(quán)限管理和工作流系統(tǒng),往往需要投入大量的時間和精力。今天大姚帶領(lǐng)大家來使用 OpenAuth.Net 快速搭建一套 .NET 企業(yè)級權(quán)限工作流系統(tǒng),希望可以幫助到有需要的小伙伴。
OpenAuth.Net 介紹
OpenAuth.Net 是一個基于 .NET 開源免費(Apache-2.0 License)的權(quán)限管理及快速開發(fā)框架,.NET 開源最好用的權(quán)限工作流系統(tǒng)。它源于 Martin Fowler 的企業(yè)級應(yīng)用開發(fā)思想,并結(jié)合了最新的技術(shù)組合,如 SqlSugar、EF、Quartz、AutoFac、WebAPI、Swagger、Mock、NUnit、Vue2/3、Element-ui/plus、IdentityServer 等。該項目架構(gòu)易于擴(kuò)展,文檔齊全且免費,特別適合中小企業(yè)使用。
- 項目官網(wǎng)地址:http://www.openauth.net.cn
- 詳細(xì)使用文檔:http://doc.openauth.net.cn
- 項目開源地址:https://gitee.com/dotnetchina/OpenAuth.Net

項目架構(gòu)圖

項目特點
- 多租戶支持: 支持多租戶,輕松管理多個客戶的數(shù)據(jù)。
- 規(guī)范的代碼風(fēng)格: 代碼規(guī)范易讀,注釋清晰,方便維護(hù)。采用主流的技術(shù),不做任何多余的封裝。
- 簡潔易用的代碼生成: 內(nèi)置極易上手的代碼生成器,支持單表、父子表等場景的代碼生成,大大提升編碼效率。
- 動態(tài)表單設(shè)計: 支持拖拽組件,快速構(gòu)建表單,無需編寫代碼,即可實現(xiàn)表單設(shè)計。
- 可視化流程設(shè)計: 通過可視化流程設(shè)計器,快速構(gòu)建流程,無需編寫代碼,即可實現(xiàn)流程設(shè)計。
- 基于Quartz的定時任務(wù): 無需開發(fā)人員參與即可配置定時任務(wù)??呻S時啟/停,可視化配置 Cron表達(dá)式功能。
- 支持多種數(shù)據(jù)庫類型: 項目同時支持 EF、SqlSugar 兩款最流行的 ORM 框架,支持 SQL Server、MySQL、Oracle、PostgreSQL 等多種數(shù)據(jù)庫。
- 等等等......
源代碼下載
git clone https://gitee.com/dotnetchina/OpenAuth.Net

??OpenAuth.Net
┣ ??.cursor //cursor rules、MCP配置
┣ ??newdocs //文檔
┣ ??Infrastructure //基礎(chǔ)工具類
┣ ??OpenAuth.Repository //數(shù)據(jù)庫訪問相關(guān)代碼
┣ ??OpenAuth.App //應(yīng)用邏輯代碼
┣ ??OpenAuth.Identity //IdentityServer4服務(wù)器,提供OAuth服務(wù)
┣ ??OpenAuth.WebApi //WebApi接口站點
┣ ??Vue2 //開源Vue2前端項目
┣ ??數(shù)據(jù)庫腳本 //數(shù)據(jù)庫腳本
┣ ??.gitattributes
┣ ??.gitignore
┣ ??LICENSE
┣ ??.cursorignore //cursor codebase index忽略文件
┣ ??Dockerfile //docker文件
┣ ??OpenAuth.Net.sln //解決方案
┗ ??README.md
后端源代碼

前端源代碼

數(shù)據(jù)庫腳本

前后端項目調(diào)用關(guān)系

后端項目環(huán)境安裝
OpenAuth.Net 當(dāng)前的目標(biāo)框架是:.NET 9,所以在項目運行之前我們需要檢查一下當(dāng)前電腦是否安裝了 .NET 9 SDK。
dotnet --list-sdks

初始化數(shù)據(jù)庫腳本
這里我們采用 MySQL 數(shù)據(jù)庫作為系統(tǒng)的數(shù)據(jù)存儲數(shù)據(jù)庫,首先我們需要初始化系統(tǒng)的 MySQL 腳本。
新建數(shù)據(jù)庫
新建一個名為:openauthdb 的數(shù)據(jù)庫:

初始化數(shù)據(jù)庫數(shù)據(jù)


后端 WebApi 項目運行
后端項目數(shù)據(jù)庫設(shè)置

運行后端 OpenAuth.WebApi
設(shè)置OpenAuth.WebApi為啟動項目運行:



前端項目環(huán)境安裝
Vue 的開發(fā)依賴于 Node.js 環(huán)境,因此我們需要安裝 Node.js(建議安裝最新版本的 Node.js)。
- Node.js 下載地址:https://nodejs.cn/download/current

環(huán)境檢查:
node --version

前端項目啟動
在 Vs Code 中打開項目
在 Vs Code 打開 OpenAuth.Net\Vue2 前端項目文件夾,如下圖:

前端項目結(jié)構(gòu):

安裝項目所有依賴
使用以下命令安裝項目所有依賴(第一次執(zhí)行的時間有點長,需要慢慢等待):
npm install


前端項目運行
使用下面命令運行前端項目:
npm run dev

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


















作者名稱:追逐時光者
作者簡介:一個熱愛編程、善于分享、喜歡學(xué)習(xí)、探索、嘗試新事物和新技術(shù)的全棧軟件工程師。
本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接,否則保留追究法律責(zé)任的權(quán)利。如果該篇文章對您有幫助的話,可以點一下右下角的【♥推薦♥】,希望能夠持續(xù)的為大家?guī)砗玫募夹g(shù)文章,文中可能存在描述不正確的地方,歡迎指正或補充,不勝感激。

浙公網(wǎng)安備 33010602011771號