# OverallAuth2.0-WebApi **Repository Path**: practive-oraganization/overall-auth2.0-web-api ## Basic Information - **Project Name**: OverallAuth2.0-WebApi - **Description**: OverallAuth2.0 是一个简单、易懂、功能强大的权限+可视化流程管理系统 2.0版本目前正在开发中。 和1.0一样使用.net webApi + vue3 搭建前后端 - **Primary Language**: C# - **License**: Not specified - **Default Branch**: 基础版 - **Homepage**: http://139.155.137.144:8883/ - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 25 - **Created**: 2025-11-20 - **Last Updated**: 2026-01-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OverallAuth2.0 Web API ## 项目简介 OverallAuth2.0 Web API 是一个基于 **.NET Core 8** 构建的后端服务接口,是 [OverallAuth2.0](http://139.155.137.144:8881/) 权限与可视化流程管理系统的核心组成部分。项目采用前后端分离模式,提供了完整的认证(Authentication)与授权(Authorization)解决方案,支持细粒度的数据权限控制。 本项目结构清晰,逻辑解耦,封装了丰富的业务逻辑 CORE 层,方便二次开发与维护。 ## 核心功能模块 ### 🚧 权限体系 (已实现) * **菜单权限**: 基于角色的树形菜单控制,动态生成用户可访问的菜单树。 * **按钮权限**: 精确到页面按钮级别的显示控制。 * **数据权限**: * **数据规则**: 支持自定义配置规则公式(匹配公式),用于动态过滤数据。 * **行级权限**: 控制用户可见的数据范围(如:只能看自己部门的数据)。 * **列级权限**: 控制列表中某些敏感字段的显示与隐藏。 ### 🛠 系统架构 * **多租户/多系统**: 支持无限级创建公司(Corporation)与系统(System)架构。 * **通用仓储**: 封装了通用的数据库操作逻辑,支持快速切换数据库类型。 * **AOP 切面**: 集成了异常日志捕获、事务管理等功能。 ## 技术栈 * **运行环境**: .NET Core 8 * **认证授权**: JWT (JSON Web Token) * **依赖注入**: Autofac * **接口文档**: Swagger (Swashbuckle) * **日志监控**: 自动化异常日志记录 * **数据库**: 通用 SQL 仓储模式 (默认支持 MySQL/SQLServer,需在配置中指定) ## 项目结构说明 * `CoreDomain`: **核心业务层**。包含复杂的业务算法(如数据权限公式解析 `DataAuthCore`、菜单树构建 `MenuCore`)。 * `DomainService`: **服务业务层**。实现具体的业务逻辑接口(如用户服务、角色服务、权限服务)。 * `Infrastructure`: **基础设施层**。 * `Repository`: 仓储模式实现,负责数据持久化。 * `BaseSqlRepository`: 包含大量预编译的 SQL 语句,构建灵活的数据查询。 * `Model`: **数据模型层**。 * `DomainModel`: 数据库实体类 (`SysUser`, `SysRole` 等)。 * `BusinessModel`: 业务输入输出模型 (`Input`, `OutPut`)。 * `OverallAuth-WebApi`: **表现层**。 * `Controllers`: API 控制器。 * `PlugIn`: 插件化配置(JWT、跨域、依赖注入、拦截器)。 * `Utility`: **工具类库**。提供 JSON 序列化、枚举处理、异常帮助等辅助功能。 ## 快速开始 1. **环境准备**: * 安装 [.NET Core 8 SDK](https://dotnet.microsoft.com/download) * 确保数据库服务已启动(MySQL 或 SQLServer) 2. **数据库配置**: * 打开 `OverallAuth-WebApi/appsettings.json` 文件。 * 修改 `ConnectionStrings` 中的连接字符串,指向您的数据库实例。 * **注意**: 数据库脚本(建库脚本)因更新频繁,托管在 QQ 群 **801913255**,请自行下载并导入。 3. **运行项目**: * 使用 Visual Studio 或 VS Code 打开 `OverallAuth-WebApi.sln`。 * 按 `F5` 启动项目。 * 访问 `http://localhost:5000/swagger` 查看完整的 API 接口文档。 ## 相关资源 * **前端源码 (Vue 3)**: [https://gitee.com/yangguangchenjie/overall-auth2.0-vue](https://gitee.com/yangguangchenjie/overall-auth2.0-vue) * **OverallAuth 1.0 (稳定版)**: [https://gitee.com/yangguangchenjie/overall-auth.-open.-web-api](https://gitee.com/yangguangchenjie/overall-auth.-open.-web-api) * **演示地址**: [http://139.155.137.144:8881/](http://139.155.137.144:8881/) ## 交流与支持 * **作者博客**: 关注公众号获取最新技术文章(扫码见原文底部)。 * **开源不易**: 如果这个项目对您有帮助,请点击 GitHub/Gitee 页面右上角的 **Star** 以示支持! --- *文档生成时间: 2024年*