你可以用它做什么
小程序用户系统
Web 应用用户管理
用户数据存储
团队协作
数据分享
为什么选择我们
不用再重复造轮子
每个开发者都应该把时间花在业务上,而不是每次都要从头写用户系统。
没有这个系统
- 自己写注册、登录、密码找回
- 自己设计数据库存储用户数据
- 自己实现 Token 认证与安全管理
- 每次新项目都要重写一遍
- 团队协作功能从零开始开发
有这个系统
- 部署即用,API 开箱可用
- 自定义字段,灵活存储任意数据
- 内置 Token 认证、加密、频率控制
- 多项目隔离,一套服务支撑多个业务
- 团队、成员、权限管理全部内置
功能一览
涵盖你需要的所有能力
从用户注册到团队协作,完整的后端链路。
用户认证
账号密码注册登录、微信小程序登录、密码找回、邮箱验证
自定义数据字段
在后台自由配置用户数据字段,支持文本、数字、日期、JSON 等类型
团队协作
创建团队、邀请码/公开加入、多级角色权限、成员管理
数据分享
生成分享码分享用户数据,控制使用次数和有效期
数据安全
字段级 RSA 加密、CSRF 防护、IP 限制、频率控制、登录保护
多项目管理
一个系统管理多个项目,数据完全隔离,独立配置
快速开始
三步接入你的应用
获取 API Key 后,几行代码就能开始使用。
1
部署系统
下载源码,配置数据库,部署到你的服务器
2
创建项目 & 配置字段
在后台创建项目,自定义你需要的用户数据字段
3
在你的应用中调用 API
使用 API Key 和 Token,调用注册、登录、数据读写接口
// 1. 配置 API Key const apiKey = "your_api_key"; // 2. 用户登录 const res = await fetch('/api/auth/login', { method: 'POST', headers: { 'X-API-Key': apiKey }, body: JSON.stringify({ account, password }) }); const { token } = await res.json(); // 3. 获取用户数据 await fetch('/api/user/field-values', { headers: { 'X-API-Key': apiKey, 'X-User-Token': token } });
API 接口
完整的 RESTful API
统一的响应格式,清晰的接口设计。
POST
/api/auth/register
注册
POST
/api/auth/login
登录
POST
/api/auth/wechat
微信登录
GET
/api/user/field-values
获取数据
PUT
/api/user/field-values
更新数据
PATCH
/api/user/field-values
部分更新
POST
/api/share/generate
生成分享
POST
/api/team
创建团队
系统架构
项目结构与运行架构
基于 ThinkPHP 8.0 的多租户用户管理后端,分层清晰、安全可靠。
目录结构
app/
controller/
控制器层:admin 后台 / api 公开接口
api/BaseApi.php
api/UserController.php
api/AuthController.php
api/TeamApi.php
api/DataController.php
api/ShareController.php
api/Guest.php
middleware/
中间件层:认证、限流、日志、安全
ApiAuth.php — API Key + Token 认证
RateLimit.php — 频率限制
ApiLogMiddleware.php — 请求日志
Cors.php / SecurityHeaders.php
AdminAuth.php — 后台 RBAC 认证
AutoCheckPermission.php — 自动权限检查
model/
模型层:数据表 ORM 映射
User / Project / Team / TeamMember
UserData / UserDataField / UserDataShare
UserDataFieldGroup / GuestToken
repository/
仓储层:数据网关(支持动态数据库)
ProjectDataGateway.php
service/
服务层:业务逻辑封装
AuthService / HmacTokenService
EmailService / CacheService
common/
公共层:响应格式、异常、加密工具
ApiResponse / ApiException / AesEncryption
请求处理流程
客户端请求
中间件管道
SecurityHeaders
Cors
InputValidation
ApiAuth
RateLimit
ApiLog
路由 → 控制器
业务处理
BaseApi 基类
ProjectDataGateway
字段验证 & 加密
异常捕获 & 日志
统一 JSON 响应
认证流程
1
获取 API Key
后台创建 Project,获得唯一 api_key
2
用户注册/登录
POST /api/auth/login 或 register,返回 user_token
3
携带 Token 调用接口
Header: X-API-Key + X-User-Token 双重认证
4
Guest 模式(可选)
未登录时通过 guest_token 访问公开数据
数据模型
Project
api_key · name · db_config · encryption
1 : N
User
token · account · project_id · status
1 : N
UserData
user_id · field_name · field_value
N : 1
UserDataField
field_name · type · is_encrypted · group_id
安全机制
认证
API Key + User Token 双重认证
每个请求必须携带有效的 X-API-Key 和 X-User-Token
加密
AES/RSA 字段级加密
敏感数据可配置 AES 对称加密或 RSA 非对称加密
限流
IP 维度频率限制
防止暴力破解和滥用,支持 Redis/File 双模式
权限
RBAC 角色权限控制
后台管理员按角色分配菜单和数据操作权限
审计
完整 API 日志记录
每次请求自动记录参数、响应、耗时、异常堆栈
IP 控制
IP 白名单 / 黑名单
支持全局 IP 访问控制策略配置
技术栈