mirror of https://github.com/veypi/OneAuth.git
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
- Add Phone field to UserInfoWithPerms response struct
- Add Phone to UpdateMeRequest for profile updates
- Include phone in user info query and update handlers
|
3 weeks ago | |
|---|---|---|
| api | 3 weeks ago | |
| auth | 3 weeks ago | |
| cfg | 4 weeks ago | |
| cli | 4 weeks ago | |
| docs | 3 weeks ago | |
| libs | 3 weeks ago | |
| models | 4 weeks ago | |
| scripts | 3 weeks ago | |
| tests | 3 weeks ago | |
| ui | 3 weeks ago | |
| .gitignore | 1 month ago | |
| CLAUDE.md | 3 weeks ago | |
| LICENSE | 5 years ago | |
| Makefile | 3 weeks ago | |
| README.md | 3 weeks ago | |
| agents.md | 1 month ago | |
| dev.yml | 1 month ago | |
| go.mod | 3 weeks ago | |
| go.sum | 3 weeks ago | |
| init.go | 3 weeks ago | |
README.md
VBase
基于 Golang 的高性能身份认证与权限管理基础框架
快速开始 • 核心特性 • 集成指南 • API 文档 • 架构设计
简介
VBase 是一个基于 Vigo 框架开发的高性能后端基础框架,提供一套标准化的用户管理、作用域权限控制(Scoped RBAC)和 OAuth2 认证服务。可作为独立服务部署,也可作为基础库集成到你的 Go 项目中。
核心特性
- 🔐 完整认证体系 - JWT Token 认证(Access + Refresh)、多因素认证(短信验证码)
- 🛡️ Scoped RBAC 权限控制 - 基于作用域(Scope)的角色访问控制,支持资源级权限和通配符权限
- <EFBFBD> 层级权限管理 - 支持资源类型(奇数层)和实例(偶数层)的精细化权限控制
- 🔑 OAuth2 Provider - 完整的 OAuth2 服务端实现,支持第三方应用接入
- 🗄️ 多数据库支持 - MySQL、PostgreSQL、SQLite 自动适配
- 📱 内置管理界面 - 基于 vhtml 的嵌入式管理后台
- 🚀 高性能 - 基于洋葱模型中间件架构,低延迟高并发
- 🧪 完整测试 - 集成测试脚本覆盖核心业务流程
快速开始
安装
go get github.com/veypi/vbase
作为独立服务运行
# 克隆项目
git clone https://github.com/veypi/vbase.git
cd vbase
# 配置数据库(编辑 dev.yaml 或使用环境变量)
export DSN="root:password@tcp(127.0.0.1:3306)/vbase?charset=utf8&parseTime=True"
export DB="mysql"
# 启动服务
go run ./cli/main.go
# 或使用 Makefile(默认端口 4001)
make run
服务默认在 http://localhost:4000 启动,管理界面访问 /vb/ 路径。
作为库集成
package main
import (
"github.com/veypi/vbase"
"github.com/veypi/vigo"
)
var Router = vigo.NewRouter()
func init() {
// 挂载 VBase 路由到 /vb 前缀
Router.Extend("/vb", vbase.Router)
}
更多集成方式请参考 集成指南。
项目结构
vbase/
├── api/ # REST API 接口层
│ ├── auth/ # 认证接口(登录、注册、Token 刷新)
│ ├── oauth/ # OAuth2 Provider 接口
│ ├── role/ # 角色管理
│ └── user/ # 用户管理
├── auth/ # 核心权限控制模块(Scoped RBAC 实现)
├── cfg/ # 配置管理
├── cli/ # 命令行入口
├── models/ # 数据模型(GORM)
├── ui/ # 前端管理界面(vhtml)
└── docs/ # 文档