English | 简体中文
基于
Axum、
SeaORM、
CedarPolicy、
Vue3、
Naive UI、 的现代化前后端分离开发平台,融合了 PBAC 权限管理、动态路由和 JWT 鉴权,助力中小型Rust Web
应用快速搭建,用于学习参考。
前端修改自 vue-fastapi-admin
- 动态路由:后端动态路由,结合 PBAC(Policy-Based Access Control)权限模型,提供精细的菜单路由控制。
- JWT鉴权:使用 JSON Web Token(JWT)、双Token,进行身份验证和授权,增强应用的安全性。
- JWT黑名单:针对性废弃Token.
- CedarPolicy授权: 基于策略的访问控制,实现高度灵活和细粒度访问控制。
- 细粒度权限控制:实现按钮和接口级别的权限控制,确保不同用户或角色在界面操作和接口访问时具有不同的权限限制。
- 重置密码: 邮件重置密码.
- 待部署
- username:superadmin / useradmin / policiadmin
- password:Qjv+L5NX#tF-
启动项目需要以下环境:
- MYSQL
- Redis
- rust
将scripts/init.sql导入数据库
git clone --depth 1 https://github.com/thsheep/axum-vue-admin.git
cd axum-vue-admin
# 生成配置文件。 会生成一个 config.toml 配置文件,酌情修改配置.
cargo run -- -g
# 运行
cargo run
服务现在应该正在运行,访问 http://localhost:9999/swagger-ui 查看API文档
启动项目需要以下环境:
- node v18.8.0+
cd web
## 安装依赖(建议使用pnpm: https://pnpm.io/zh/installation)
npm i -g pnpm # 已安装可忽略
pnpm i # 或者 npm i
pnpm dev
username:superadmin / useradmin / policiadmin
password:Qjv+L5NX#tF-