使用 OpenAuth.Net 快速搭建 .NET 企业级权限工作流系统
前言
在企业应用开发中,系统权限管理和工作流是比较常见的功能。虽说开发起来难度不大,但从零开始开发一个功能完备的权限管理和工作流系统,往往需要投入大量的时间和精力。今天大姚带领大家来使用 OpenAuth.Net 快速搭建一套 .NET 企业级权限工作流系统,希望可以帮助到有需要的小伙伴。
OpenAuth.Net 介绍
OpenAuth.Net 是一个基于 .NET 开源免费(Apache-2.0 License)的权限管理及快速开发框架,.NET 开源最好用的权限工作流系统。它源于 Martin Fowler 的企业级应用开发思想,并结合了最新的技术组合,如 SqlSugar、EF、Quartz、AutoFac、WebAPI、Swagger、Mock、NUnit、Vue2/3、Element-ui/plus、IdentityServer 等。该项目架构易于扩展,文档齐全且免费,特别适合中小企业使用。
- 项目官网地址:http://www.openauth.net.cn
- 详细使用文档:http://doc.openauth.net.cn
- 项目开源地址:https://gitee.com/dotnetchina/OpenAuth.Net

项目架构图

项目特点
- 多租户支持: 支持多租户,轻松管理多个客户的数据。
- 规范的代码风格: 代码规范易读,注释清晰,方便维护。采用主流的技术,不做任何多余的封装。
- 简洁易用的代码生成: 内置极易上手的代码生成器,支持单表、父子表等场景的代码生成,大大提升编码效率。
- 动态表单设计: 支持拖拽组件,快速构建表单,无需编写代码,即可实现表单设计。
- 可视化流程设计: 通过可视化流程设计器,快速构建流程,无需编写代码,即可实现流程设计。
- 基于Quartz的定时任务: 无需开发人员参与即可配置定时任务。可随时启/停,可视化配置 Cron表达式功能。
- 支持多种数据库类型: 项目同时支持 EF、SqlSugar 两款最流行的 ORM 框架,支持 SQL Server、MySQL、Oracle、PostgreSQL 等多种数据库。
- 等等等......
源代码下载
git clone https://gitee.com/dotnetchina/OpenAuth.Net

OpenAuth.Net
┣ .cursor //cursor rules、MCP配置
┣ newdocs //文档
┣ Infrastructure //基础工具类
┣ OpenAuth.Repository //数据库访问相关代码
┣ OpenAuth.App //应用逻辑代码
┣ OpenAuth.Identity //IdentityServer4服务器,提供OAuth服务
┣ OpenAuth.WebApi //WebApi接口站点
┣ Vue2 //开源Vue2前端项目
┣ 数据库脚本 //数据库脚本
┣ .gitattributes
┣ .gitignore
┣ LICENSE
┣ .cursorignore //cursor codebase index忽略文件
┣ Dockerfile //docker文件
┣ OpenAuth.Net.sln //解决方案
┗ README.md
后端源代码

前端源代码

数据库脚本

前后端项目调用关系

后端项目环境安装
OpenAuth.Net 当前的目标框架是:.NET 9,所以在项目运行之前我们需要检查一下当前电脑是否安装了 .NET 9 SDK。
dotnet --list-sdks

初始化数据库脚本
这里我们采用 MySQL 数据库作为系统的数据存储数据库,首先我们需要初始化系统的 MySQL 脚本。
新建数据库
新建一个名为:openauthdb 的数据库:

初始化数据库数据


后端 WebApi 项目运行
后端项目数据库设置

运行后端 OpenAuth.WebApi
设置OpenAuth.WebApi为启动项目运行:



前端项目环境安装
Vue 的开发依赖于 Node.js 环境,因此我们需要安装 Node.js(建议安装最新版本的 Node.js)。
- Node.js 下载地址:https://nodejs.cn/download/current

环境检查:
node --version

前端项目启动
在 Vs Code 中打开项目
在 Vs Code 打开 OpenAuth.Net\Vue2 前端项目文件夹,如下图:

前端项目结构:

安装项目所有依赖
使用以下命令安装项目所有依赖(第一次执行的时间有点长,需要慢慢等待):
npm install


前端项目运行
使用下面命令运行前端项目:
npm run dev

项目运行效果展示
运行 OpenAuth.Net 项目我们可以发现其实它已经涵盖了大多数通用的权限管理和工作流系统的功能模块,假如你想要了解更多的项目实用功能和特性欢迎前往官网地址查看,别忘了给项目一个Star支持。
App running at:
- Local: http://localhost:1803/
- Network: http://192.168.1.5:1803/


















使用 OpenAuth.Net 快速搭建 .NET 企业级权限工作流系统的更多相关文章
- Angularjs,WebAPI 搭建一个简易权限管理系统 —— 系统业务与实现(三)
目录 前言 Angularjs名词与概念 Angularjs 基本功能演示 系统业务与实现 WebAPI项目主体结构 Angularjs 前端主体结构 系统业务与实现(二) 上一章我们讲解的 Angu ...
- 【gin-vue-admin】 使用go和vue 快速搭建一个项目模板
gin-vue-admin gin+vue开源快速项目模板 项目地址:https://github.com/piexlmax/gin-vue-admin 增加了 micro-service-test分 ...
- 【Harbor学习笔记】-教你快速搭建Docker私有仓库
目录 架构图 Harbor依赖的外部组件 Harbor自有组件 核心组件 安装 1. 下载离线安装包 2. 配置 harbor.cfg (harbor.yml) 3. 启动 Harbor 安装配置问题 ...
- 实用干货!Java开发企业级权限管理系统视频教程
全程手把手带你运用Java技术栈,打造一套基于最流行的RBAC拓展模型的,分布式的,有界面的,高灵活性,高拓展性的企业级权限管理系统.学完本课程你将可以轻松应对绝大多数企业开发中与权限管理及后台系统相 ...
- 快速搭建企业subversion
快速搭建企业subversion 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们公司用的版本控制控制系统就是subversion(简称SVN),不得不说这是一款比较好使的管理工 ...
- [原创] zabbix学习之旅五:如何快速搭建一个报警系统
通过之前的文章,我们已搭建好zabbix server.agent和mail客户端,现在万事俱备,只差在server的界面中进行相应配置,即可快速搭建一个报警系统.总的来说,快速搭建一个报警系统的顺序 ...
- Angularjs,WebAPI 搭建一个简易权限管理系统
Angularjs,WebAPI 搭建一个简易权限管理系统 Angularjs名词与概念(一) 1. 目录 前言 Angularjs名词与概念 权限系统原型 权限系统业务 数据库设计和实现 Web ...
- Linux下快速搭建php开发环境
php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...
- 快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana)
快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana) 概要说明 需求场景,系统环境是CentOS,多个应用部署在多台服务器上,平时查看应用日志及排查问题十 ...
- LVS+keepalived快速搭建测试环境
#LVS+keepalived快速搭建测试环境 #LVS+keepalived快速搭建测试环境 #centos6 X64 # LVS 负载均衡模式:DR(直接路由) 192.168.18.31 mas ...
随机推荐
- RESTful的连接时间超时时间设定
dsResrful的连接方式时,如何设定timeout呢? DSRestConnection.HTTP.ConnectTimeout := 5000; 就这么简单.因为封装的indy的TidHTTP. ...
- Sublime Text 3汉化教程
一.初始化插件仓库 ctrl+`(esc键下方那一个)打开控制台输入以下代码回车 import urllib.request,os,hashlib; h = '6f4c264a24d933ce70df ...
- Cursor预测程序员行业倒计时:CTO应做好50%裁员计划
提供AI咨询+AI项目陪跑服务,有需要回复1 前两天跟几个业内同学做了一次比较深入的探讨,时间从15.00到21.00,足足6个小时! 其中有个问题特别有意思:从ChatGPT诞生到DeepSeek爆 ...
- c++指针传递与引用传递
c 不支持引用传递的! 在 C++中,指针传递和引用传递是两种常用的参数传递方式,它们各自有不同的特点和适用场景.下面是两者之间的主要区别: 1. 语法和使用 指针传递 定义和调用:函数参数是一个指针 ...
- windows10 安装 git
windows10 安装 git 1.前往官网:https://git-scm.com/downloads 网站会自动识别系统,若识别有误,则自己选择更改即可 2.双击运行 3.选择自己的安装目录 4 ...
- EFCore-CodeFirst-Mysql 创建ConsoleApplication 程序
1.创建一个ConsoleApplication,程序集选择.NET5.:添加对应的依赖 2.添加对应的类Student.Course.Classes using System; using Syst ...
- 47.9K star!全平台开源笔记神器,隐私安全首选!
嗨,大家好,我是小华同学,关注我们获得"最新.最全.最优质"开源项目和高效工作学习方法 "Joplin 是一款开源的笔记记录和待办事项应用,支持端到端加密同步,完美替代商 ...
- edge浏览器新版,开心的扔掉chrome!还是微软更良心!windows系统全球用也没说啥!让你android能!
直接上图吧,这下google慌了吧!微软给力呀!关键是版本直接最新的chromium!比起qq浏览器70,360浏览器78新的多了: 微软开发,质量信得过,就个人隐私之类的我更相信微软,比起googl ...
- 工具分享 | SBSCAN 一款专注于Spring框架的渗透测试工具
0x00 工具介绍 SBSCAN是一款专注于spring框架的渗透测试工具,可以对指定站点进行springboot未授权扫描/敏感信息扫描以及进行spring相关漏洞的扫描与验证. 0x01 下载链 ...
- 【笔记】Git|将git仓库中所有的 commit 合成一个,清空所有 git 提交记录
在对代码进行开源时,我们往往并不希望代码开发过程中的提交记录被其他人看到,因为提交的过程中往往会涵盖一些敏感信息.因此会存在 将仓库中所有 commit 合成一个 的需求. 直觉上,往往会用 reba ...