实务专题 · 交付验收

签发私密下载链接前,先写清它能访问什么

签名链接是一种临时访问能力,拿到链接的人可能在有效期内使用它。客户门户增加下载按钮之前,应先确定文件、操作和有效时间。难猜的地址不等于绑定了具体用户。

适用读者与交付决定

设计工作室与B2B客户资料门户。把本题作为给建站或技术供应方的验收任务;需要真实系统证据的地方不能由演示文件代替。

官方依据与解释边界

R2 预签名链接绑定 S3 操作与有效期,使用 S3 API 端点而非自定义域名地址。应把链接视为敏感凭据,签发前先做权限检查。 Cloudflare R2: presigned URLs · 核对日期:2026年10月16日。

已填写教学例子

合成例子,不是真实客户案例。 输入、预期及反例如下;真实平台尚未按此例集成测试。

窄屏可横向滚动表格。

输入/情况检查口径预期结果
GET, file-A, t=90, expiry=100对象操作匹配模型内可用
改用写入操作不符拒绝
GET at expiry=100已到边界本模型拒绝

怎样执行验收

  1. 写明谁可申请及其有权访问的具体文件。
  2. 只签发必要操作与合理短期,不记录完整签名。
  3. 在获准测试桶核对对象错误、操作错误及过期路径。

如何解释结果与保留证据

离线检查仅模拟请求开始时的边界,不验证加密签名,也不实现 R2。到期前已开始的传输可能有不同处理,应核对供应方当前行为。若需逐用户撤销,应明确采用认证网关,不能假定每条签名链接都可单独撤销。

适用边界

不使用真实密钥、桶策略或客户文件。例子不是安全认证,也不是生产权限引擎。

离线复核

保存下方两份文件到同一目录,用Node22.13或更新版本执行。模型只验证有限输入,不代表真实服务或认证。 已填输入及预期输出 · 可检查的函数

node decision-check.mjs private-download-expiry-contract.json