跳到主要内容

AppBase

WeaveFox 云

WeaveFox 平台内置云服务,默认启用,无需授权配置。

AppBase 是 OceanBase 提供的后端即服务(BaaS)能力,为 WeaveFox 应用提供开箱即用的数据库、用户认证、云函数等后端支撑,无需自建服务器即可构建具备数据持久化与登录鉴权的应用。

核心能力​

  • 数据库:关系型表结构存储,支持表/字段/索引/权限与数据行的可视化管理
  • 用户认证:基于角色(Role)的权限模型,平台自动为登录用户在 AppBase 中建户并发放会话凭证
  • 云函数:用于承载复杂后端逻辑的 Serverless 函数,平台内置 weavefox-auth-service 认证函数处理登录流程

接入方式​

AppBase 属于 WeaveFox 平台内置云服务,无需额外的授权配置即可启用。

在应用创作过程中,直接在对话中用自然语言表达你的诉求即可,例如:

  • 「为这个应用接入数据库,需要保存用户发布的帖子」
  • 「给应用加一个登录功能,并把管理员和普通用户的权限分离开」

WeaveFox 会自动调用平台后端提供的 AppBase 工具链,按需创建数据库与表、调整字段与权限、部署云函数,并把对应的客户端调用代码集成进生成的应用。

凭证安全托管

应用代码通过用户会话凭证调用 AppBase,平台级的 AppBase API Key 仅在服务端使用,不会注入到生成的应用中,避免被终端用户获取。

在云服务页面管理 AppBase​

应用接入 AppBase 后,进入应用的云服务页面,可以在不同的标签页查看和管理后端资源:

标签页用途
数据库查看和管理应用中存储的数据
用户管理应用的用户与访问权限
云函数部署函数,为复杂场景提供可靠的实时后端服务
安全检测应用存在的安全问题

数据库​

数据库标签页展示应用接入的 AppBase 数据库,合理组织业务数据表与权限,是对接应用功能、保障数据安全的基础。

  • 表列表:分页展示当前数据库下所有表,包含字段数量与创建/更新时间。展开可查看该表的权限设置(操作 × 角色矩阵)
  • 表详情:点击「查看数据」进入单张表的管理界面,包含四个标签页:
    • 字段:字段名、类型、是否必填、默认值
    • 索引:索引名称、类型、包含字段
    • 权限:以「读取/创建/更新/删除 × 角色」矩阵展示当前表的权限配置
    • 数据:分页查看表中的记录,可切换每页条数(10 / 20 / 50),并支持编辑、删除单条记录、导出当前表全部数据为 CSV
数据写入权限

数据库表数据的编辑与删除仅 应用创建者(owner) 可操作,且 roles 表作为权限控制的基础设施,受平台保护、不可在数据页直接操作。

用户​

用户标签页展示在应用中完成登录或被平台自动建户的用户列表,用于核查应用的实际使用情况。

  • 列表展示用户头像、邮箱、手机号、标签(角色)与状态(正常/禁用)
  • 可查看用户的偏好设置(Preferences)原始内容
  • 支持按页浏览,方便管理大量用户

云函数​

云函数标签页管理应用于处理复杂后端逻辑的 Serverless 函数,平台默认会为接入登录功能的应用部署内置的 weavefox-auth-service 认证函数。

  • 函数卡片展示运行时、部署状态(已就绪/构建中/失败 等)、是否启用、超时时间、入口文件、定时器(cron)、最新部署时间
  • 展开可查看函数的环境变量(默认隐藏具体值)
  • 应用创建者或读写权限协作者可以「重新部署」某个函数(带二次确认,避免影响线上用户)

安全​

安全标签页用于发布前的自查。WeaveFox 会校验应用接入的 AppBase 数据表权限配置,识别过宽的访问授权带来的数据风险,详情请参考 应用安全。

表权限模型​

AppBase 使用「操作 × 角色」的权限表达式来控制对表的访问,格式为 operation("role"),例如:

  • read("any"):所有人可读取(含未登录用户)
  • create("label:admin"):admin 角色可创建

支持的操作:read / create / update / delete;常见的角色包括 any(所有人)与 label:roleKey 形式的角色(如 label:admin、label:normal 等)。roles 表与应用自身的角色数据由平台维护,用于支撑基于角色的权限管理。

与发布安全检测配合

发布应用时,WeaveFox 会自动扫描表权限并按操作与开放对象给出高/中/低风险等级;存在未确认风险的发布会被暂停,详情参考 应用安全。

应用运行时如何鉴权​

应用运行时不会持有平台级 API Key,而是通过用户会话凭证访问 AppBase:

  1. 用户登录应用(含支付宝小程序 / H5 的 openId 登录场景)
  2. 平台在服务端为该用户在 AppBase 中创建或获取对应用户
  3. 颁发一个有效期约 60 秒的一次性 Custom Token 给应用
  4. 应用使用该 Token 初始化 AppBase 客户端完成登录

这一流程由内置 weavefox-auth-service 云函数承载,应用自身的业务代码无需关心用户创建与会话下发的细节。

更多信息​

前往 OceanBase AppBase 官网,或参考 Appwrite 官方文档 了解底层协议与 SDK 用法。