新闻详情

新闻详情

首页 / 资讯中心 / 详情

NodeWarden 附件与 Send 文件分享指南:R2 与 KV 双模式、大小上限与一次性令牌安全

发布时间:2026/9/26 3:25:09来源:尧图网络
NodeWarden 附件与 Send 文件分享指南:R2 与 KV 双模式、大小上限与一次性令牌安全
NodeWarden 附件与 Send 文件分享指南R2 与 KV 双模式、大小上限与一次性令牌安全【免费下载链接】nodewardenBitwarden-compatible server running on Cloudflare Workers项目地址: https://gitcode.com/gh_mirrors/no/nodewardenNodeWarden 是一个运行在 Cloudflare Workers 上的 Bitwarden 兼容密码管理服务器除了管理密码库还内置了附件加密存储和Send 安全文件分享两大能力附件可加密挂到密码条目下Send 则能生成带密码保护、限时自动删除的分享链接。本文带你搞懂它的 R2 与 KV 双存储模式、文件大小上限以及一次性令牌是如何保护你的每一次上传和下载的。先搞懂附件Attachment和 Send 各适合什么场景功能用途谁能访问典型场景附件把文件加密后绑在某个密码条目下仅自己客户端用密码库密钥解密存银行卡照片、私密文档、密钥文件Send生成临时分享链接可设密码拿到链接 密码的外部接收者把文件一次性安全地发给别人两者底层共用同一套对象存储抽象层由 blob-store.ts 统一封装读写逻辑代码里通过存储绑定的名称自动识别当前是 R2 还是 KV 模式。存储模式怎么选R2 vs KV 一张表看懂部署时 NodeWarden 提供两套配置默认的 wrangler.toml 绑定 R2 桶ATTACHMENTS桶名nodewarden-attachmentsKV 模式则使用 wrangler.kv.toml 绑定 KV 命名空间ATTACHMENTS_KV部署命令改为npm run deploy:kv。对比项R2 模式默认KV 模式是否需要付费卡需要❌ 不需要单个附件 / Send 文件上限100 MB软限制可调25 MiBCloudflare KV 硬限制免费额度10 GB 存储1 GB 存储适合人群正式部署、大文件需求快速体验、小文件 小技巧即使同时绑定了 R2 和 KV服务端也会优先使用 R2见 blob-store.ts 中的getBlobStorageKind。KV 模式下载超限时会直接返回 413并在界面上提示文件过大。附件上传下载一次性令牌如何保护你的文件附件的上传和下载都不走登录态接口直接读写文件的方式而是采用短效 JWT 令牌 公开端点的设计核心逻辑在 attachments.ts。上传三步走先领令牌再直传创建元数据客户端先提交文件名和大小服务端生成附件记录并签发一个上传令牌返回一个带token参数的直传 URL见 direct-upload.ts 中的buildDirectUploadUrl凭令牌直传客户端拿着令牌把文件直接 POST 到公开端点服务端校验令牌归属是否匹配用户、密码条目、附件 ID 三重比对写入对象存储文件存入 R2/KV对象路径固定为{cipherId}/{attachmentId}并自动触发多端同步通知。这样做的好处是上传凭证只能用一次、且与具体文件一一绑定泄露也无法用于其他文件。下载更严格5 分钟有效 只能用一次当你请求附件下载信息时服务端签发一个有效期仅 300 秒5 分钟的下载令牌配置见 limits.ts 中的fileDownloadTokenTtlSeconds。下载请求还要经过一道更狠的关卡令牌带唯一 IDjti首次消费后记入数据库第二次使用同一令牌直接返回 401consumeAttachmentDownloadToken响应头强制X-Content-Type-Options: nosniff并对 Content-Type 做清洗防止浏览器把下载内容当成脚本执行。换句话说链接截屏发给别人没用——它 5 分钟后过期用过一次即作废。Send 文件分享大小上限、自动删除与访问控制Send 的创建、校验逻辑分布在 sends-private.ts自己的 Send和 sends-public.ts他人访问你的 Send共享规则在 sends-shared.ts。硬性上限清单创建前先看这里限制项数值说明文件大小100 MBR2/ 25 MiBKV超限直接返回 400/413删除日期最多距当前31 天不能无限期保留分享密码PBKDF2 10 万次迭代加盐哈希服务端不存明文密码访问次数可设maxAccessCount达到上限后链接立即失效 每个文件 Send 都必须设置删除日期——到期后链接自动 404文件随之从对象存储中清除这是到期即焚的核心保障。分享链接背后的三层防护AccessId 混淆链接里不是明文的 Send ID而是 UUID 的 Base64 编码形式无法简单枚举遍历密码限流带密码的 Send 会按客户端 IP 记录失败次数连续猜错会触发临时锁定429成功一次则清零计数短效令牌下载文件下载同样走令牌换 URL 的流程访问令牌有效期 300 秒sendAccessTokenTtlSeconds每次访问还会累加accessCount并实时通知创建者。⚠️ 注意NodeWarden 目前不支持邮箱验证Email Auth类型的 Send请求该方式会返回 501。分享安全主要依赖密码 删除日期 访问次数组合。安全使用建议清单✅ 正式部署优先选 R2 模式享受 100 MB 单文件上限与更大免费空间✅ 分享文件时必设密码 最短可行删除日期 访问次数上限三管齐下✅ 删除密码条目时其下所有附件会并发批量清理并发度 4见 attachments.ts 的deleteAllAttachmentsForCiphers不用担心存储残留✅ 所有 Send 的创建/删除/改密操作都会写入审计日志可在管理后台的日志中心回查。相关文件速查附件接口src/handlers/attachments.tsSend 共享规则src/handlers/sends-shared.ts对象存储抽象src/services/blob-store.ts直传与令牌 URL 构造src/utils/direct-upload.ts大小与时效配置src/config/limits.tsR2 部署配置wrangler.toml / KV 部署配置wrangler.kv.toml【免费下载链接】nodewardenBitwarden-compatible server running on Cloudflare Workers项目地址: https://gitcode.com/gh_mirrors/no/nodewarden创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Python agogosml-cli 包详解与实战案例 2026/9/26 4:08:46

Python agogosml-cli 包详解与实战案例

1. 引言agogosml-cli 是一个面向机器学习流水线开发的 Python 命令行工具包,它围绕 agogosml 框架提供了一套简洁的脚手架能力,帮助开发者快速创建、配置、运行和调试机器学习实验。本文将从功能、安装、语法、参数、实际案例以及常见错误与注意事项六个…

阅读更多 →
Python agones-python-sdk 包详解与实战案例 2026/9/26 4:08:46

Python agones-python-sdk 包详解与实战案例

1. 引言Agones 是 Google 与 Ubisoft 联合开源的一套基于 Kubernetes 的游戏服务器托管平台,专门用于大规模、多人在线游戏的专用服务器(Dedicated Game Server)编排与管理。而 agones-python-sdk 是 Agones 官方提供的 Python 客户端 SDK&am…

阅读更多 →
Python 包 agora-cli 完全指南与实战案例 2026/9/26 4:08:46

Python 包 agora-cli 完全指南与实战案例

1. 引言agora-cli 是一个基于 Python 开发的命令行工具包,用于简化 Agora 平台相关资源的创建、管理和自动化操作。它把常见的平台交互封装成简洁的命令,帮助开发者在终端中快速完成项目初始化、资源部署、日志查看和配置管理等任务。本文将从功能、安装…

阅读更多 →
Python agntsmth-core 包实战案例与常见错误 2026/9/26 4:08:33

Python agntsmth-core 包实战案例与常见错误

1. 引言agntsmth-core 是一个面向 Python 开发者的轻量级智能体(Agent)开发核心包,专注于提供简洁、可扩展的 Agent 运行时、工具调用框架和消息编排能力。它不依赖重型框架,适合在中小型项目中快速搭建基于大语言模型的自动化流程…

阅读更多 →
Python agntcy-iomapper 包详解与实战案例 2026/9/26 4:08:33

Python agntcy-iomapper 包详解与实战案例

1. 引言agntcy-iomapper 是一个面向 Python 开发者的输入输出映射工具包,专注于在复杂数据处理流程中建立字段之间的映射关系。它通过声明式配置和灵活的转换规则,帮助开发者减少手写数据搬运代码,提升数据管道和接口对接的开发效率。本文将从…

阅读更多 →
MySQL进阶|游标与条件处理程序:存储过程逐行捕获异常 2026/9/26 4:08:33

MySQL进阶|游标与条件处理程序:存储过程逐行捕获异常

🏠博客主页:小谢同学的小破站✍️本文由 小谢同学的小破站 原创,首发于 CSDN 💻☕JavaSE专栏:JavaSE📗JavaEE初阶专栏:JavaEE初阶📘JavaEE进阶专栏:JavaEE进阶&#x1f9…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉