
NocoBase外部存儲權限全鏈路講解誰能傳、誰能看、在哪管【免費下載鏈接】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/nocobaseNocoBase 的文件管理器插件把本地磁盤、阿里 OSS、AWS S3、騰訊 COS 四類存儲收進同一套權限規則里。讀完這篇你能配出上傳文件類型白名單、大小上限并知道如何在 ACL 面板里給不同角色分配文件訪問權限。一次真實事故頭像被當成跳板合同圖流到外網客戶在注冊頁傳頭像結果有人把一張帶腳本的 HTML 改后綴塞了進來另一邊銷售隨手傳的產品圖被未登錄的訪客直接下載走了。兩件事的根源是一樣的上傳入口沒有規則訪問鏈路沒有分角色。下面講的每個機制都是在堵這兩個洞。30 秒看清支持什么4 種引擎、3 層權限維度實際支持存儲引擎local、ali-oss、s3、tx-cos在管理界面可并存多套上傳規則MIME 類型白名單、單文件大小上限默認 20MB權限粒度未登錄不能傳改/刪只能操作自己的文件存儲配置本身也要走 ACL配置入口文件管理器插件頁建存儲、填規則 ACL 面板發權限三步配出第一套存儲權限規則啟用插件拿到默認存儲文件管理器首次安裝時會自動創建一個默認的本地存儲引擎你不需要從零建配置。在存儲里填兩條規則進入管理界面的存儲設置給這套存儲填 MIME 白名單如image/*, application/pdf和大小上限規則落在storages表的rules字段里代碼邏輯見 src/server/rules/。回 ACL 面板發權限給外部訪客只留查看權給運營加上傳權把存儲管理的權限單獨留給管理員角色。誰 → 能做什么 → 在哪里控制權限模型的三要素上傳鏈路可以想成寫字樓的門禁刷工牌登錄才能進樓但打印機只認你本人刷卡機房鑰匙則只有行政才有。對應到代碼三要素是這樣的誰登錄用戶loggedIn是上傳的最低門檻未登錄一律 403。能做什么上傳、新建放開給登錄用戶但更新和刪除被強制加了一個過濾條件——只命中createdById等于當前用戶的記錄。別人傳的文件你連改的機會都沒有。在哪里控制角色級權限在 ACL 面板分配文件級約束寫在插件里核心就是這幾行注冊邏輯this.app.acl.allow(attachments, [upload, create], loggedIn); this.app.acl.addFixedParams(attachments, update, ownMerger); this.app.acl.addFixedParams(attachments, destroy, ownMerger);存儲配置storages:*被注冊為獨立的 ACL 片段意味著誰能動存儲和誰能傳文件是兩條互不影響的線默認引擎還有刪除保護。客戶頭像上傳只放圖片公開可看頭像場景要的是門檻低但入口窄。給這個字段單獨建一套存儲規則里 MIME 只寫image/*、大小限 2MBACL 上給普通注冊用戶開上傳權即可。這套規則在上傳瞬間校驗不合格直接返回 400訪客拿不到文件 URL 就下不走。內部合同歸檔只收 PDF非管理員看不見合同場景反過來——門檻高、口子小。新建一套私有存儲MIME 規則寫死application/pdf這樣 HTML、XML、SVG 這類可執行內容的文件一律進不來再在 ACL 里把文件查看權限只分配給法務和管理員角色。銷售團隊只保留上傳和查看自己上傳的權限歸檔目錄對其他角色徹底不可見。上線前先看這 5 條MIME 校驗讀的是文件頭魔數而不是后綴名把evil.html改名成a.png照樣會被拒。默認存儲引擎和被數據表引用的存儲都刪不掉系統在用前會攔下你防止字段鏈接斷裂。不配 MIME 規則就是*全放行公網入口的存儲別偷懶。默認大小上限是 20MB大文件場景記得顯式調大小圖場景顯式調小。本地存儲的路徑有防穿越檢查但生產環境更建議用 OSS/S3 配 CDN權限和帶寬一起省心。存儲權限這件事說到底就是上傳有閘、查看有門、配置有鎖三層NocoBase 把三層都留了開關。現在就可以打開管理界面進文件管理器往默認存儲里傳一張圖片再傳一個.html試試——被拒的那一刻你就知道規則生效了。【免費下載鏈接】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),僅供參考