news 2026/8/24 8:55:30

NocoBase 文件管理实战:3 步配好外部存储权限控制

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
NocoBase 文件管理实战:3 步配好外部存储权限控制

NocoBase 文件管理实战:3 步配好外部存储权限控制

【免费下载链接】nocobaseNocoBase is an open-source AI + no-code platform for building business systems fast. Instead of generating everything from scratch, AI works on top of production-proven infrastructure and a WYSIWYG no-code interface, so you get both speed and reliability.项目地址: https://gitcode.com/GitHub_Trending/no/nocobase

NocoBase 是一款开源 AI + 低代码平台,文件管理是它最基础也最常被折腾的功能:上传文件、存文件、控制谁能访问。这篇文章带你从零把外部存储权限控制搭起来,本地磁盘和阿里云 OSS、AWS S3、腾讯云 COS 都覆盖到,看完就能自己配一套可上线的文件体系。

🚀 快速上手:3 分钟完成首次配置

第一次用不用碰云存储,本地存储开箱即用:

  1. 管理后台打开「插件管理」,确认 file-manager 插件已启用,它装在packages/plugins/@nocobase/plugin-file-manager/,随主程序一起发布。
  2. 进插件设置页,默认已有一个 Local storage:文件落在storage/uploads目录,单文件上限 20MB。
  3. 建一个带附件字段的表单或表格,上传一张测试图,点开预览确认能打开。

跑通后你会发现,后面接任何云存储都是同一套动作:新建存储 → 填参数 → 测试连接 → 指定文件落哪个存储

存储方案怎么选

存储类型适合场景需要你准备取舍
本地 local开发测试、单机小团队零配置,但扩容和迁移都要动磁盘
阿里云 OSS国内业务、访问速度优先region、AccessKey、Bucket有公网流量费用,要管好密钥安全
AWS S3海外业务、已有 AWS 账号region、AccessKey、Bucket国内访问延迟高
腾讯云 COS国内业务、已有腾讯云账号Region、SecretId/SecretKey、Bucket与 OSS 定位类似,按现有云选

经验值:先用本地开发,上线前把新附件切到云存储,已有文件不受影响,业务代码不用动。

权限怎么配:三种常见场景

文件权限分两层:存储层管「文件能不能公开访问」,ACL 层管「谁能上传、谁能改记录」。两层都配了才算闭环。

公开文件:产品图、logo 这类

在存储配置里打开public(公开访问)开关,该存储下的文件就能直接用 URL 打开,不用登录。官网素材、商品图适合走公开。

私有文件:合同、内部报表

public 保持关闭(默认就是关的)。此时访问要走 NocoBase 的登录和权限校验,没权限的链接直接 403。内部文档建议全部私有。

按角色授权:谁能传、谁能删

附件在 NocoBase 里是独立资源 attachments。进「角色权限」页面,给对应角色勾选 attachments 的查看、创建、更新、删除权限。比如让"员工"只有上传权,"管理员"才能删。

❓ 常见问题与避坑

1. 上传超过 20MB 被拒?每个存储都有大小规则,本地默认 20MB。在存储的 rules 里调大 size 即可,大文件业务建议直接上云再放宽限制。

2. OSS 配好了但上传报错?九成是 Bucket 和 region 不匹配,或 AccessKey 没给该 Bucket 读写权限。先点存储页的「测试连接」跑一遍,再查密钥权限。

3. 只想允许传图片和 PDF?存储规则里配 MIME 类型限制(源码在插件的src/server/rules/目录),填image/*, application/pdf,逗号分隔多个类型。不符合的文件会被直接拦下,这就是 NocoBase 文件上传限制的实现点。

4. 文件突然打不开了?先确认存储的 public 属性没被误改。私有存储必须登录后、且角色有 attachments 查看权限才能打开。

5. 换了存储,旧文件还能访问吗?能。附件记录存的是存储 ID + 文件名,切存储只影响新上传的文件。

🛡️ 安全加固与性能调优清单

安全

  • 云存储密钥只授予单个 Bucket 的读写权限,别用主账号 Key
  • 私有存储的 Bucket ACL 在云厂商侧也设为私有,别开公开读
  • 确认上传接口要求登录(默认已开,attachments 的 upload 仅对已登录用户放行)
  • 本地存储目录避开会被直接列目录的 Web 根路径

性能

  • 图片多的业务给云存储配 CDN 域名,填到存储的 baseUrl
  • 大文件业务优先上云,别让本地盘扛生产流量
  • 定期清理孤儿附件:库里有记录但文件已不存在的,删掉对应记录

一句话收尾:存储管文件放哪,权限管谁能碰,两层都配好,NocoBase 的文件体系就算立住了。想深入的话,仓库里的插件文档在docs/docs/cn/plugins/@nocobase/plugin-file-manager/,实现细节就看插件源码packages/plugins/@nocobase/plugin-file-manager/

【免费下载链接】nocobaseNocoBase is an open-source AI + no-code platform for building business systems fast. Instead of generating everything from scratch, AI works on top of production-proven infrastructure and a WYSIWYG no-code interface, so you get both speed and reliability.项目地址: https://gitcode.com/GitHub_Trending/no/nocobase

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 8:53:35

Web自动化新范式:从脆弱点击到稳健意图的Typed Actions实践

1. 从“点击”到“键入”:Web Agent交互范式的根本性转变最近在设计和优化一个自动化网页操作工具时,我遇到了一个非常典型且棘手的问题:脚本在某个电商网站上频繁失败,报错信息是“元素不可交互”。排查了半天,发现是…

作者头像 李华
网站建设 2026/8/24 8:52:08

从精准到氛围:自进化多智能体框架如何重塑临床决策支持系统

1. 项目概述:从“精准”到“氛围”的临床决策范式跃迁在临床决策支持系统(CDSS)这个领域里,我们过去几十年的努力,几乎都围绕着一个核心词展开:精准。从早期的专家规则库,到后来的统计模型&…

作者头像 李华
网站建设 2026/8/24 8:48:54

5步写出第一个原子化样式:otion安装与快速入门完整教程

5步写出第一个原子化样式:otion安装与快速入门完整教程 【免费下载链接】otion Atomic CSS-in-JS with a featherweight runtime 项目地址: https://gitcode.com/gh_mirrors/ot/otion otion 是一款原子化 CSS-in-JS 原子样式库,主打「鹅毛般轻量的…

作者头像 李华