123云盘直链鉴权开发手册
123云盘直链鉴权开发手册
123云盘直链下载内容默认公开。为防止资源被非法盗链和恶意下载,建议开启 URL鉴权。通过在URL中加入加密签名(MD5)和时间戳(Timestamp),您可以有效控制链接的有效期并验证请求合法性。
1. 鉴权工作流
- 用户服务端:根据鉴权算法、UID和私钥(PrivateKey)生成带
auth_key参数的加密链接。 - 终端用户:点击该加密链接发起下载请求。
- 123云盘节点:验证时间戳是否过期,并重新计算MD5值。若校验一致且未过期,则允许下载;否则返回 403 错误。
2. URL 构造规则
2.1 鉴权 URL 格式
1 | |
2.2 签名计算方法(<MD5Hash>的计算)
构造待签名字符串:
URI-Timestamp-Rand-UID-PrivateKey(注:URI 为请求路径,必须包含 UID 部分,不包含协议头、域名及参数。例如:/13/files/1.txt)
计算 MD5:
MD5Hash = md5sum(待签名字符串)(注:结果为 32 位小写字符串)
3. 字段定义
| 字段 | 说明 | 示例 |
|---|---|---|
| UID | 用户在123云盘的唯一标识 | 13 |
| Path | 文件的相对路径 | /files/1.txt |
| Timestamp | 链接失效的时间点(Unix 时间戳,10位整数) | 1689220731 |
| Rand | 随机字符串(建议使用 UUID 或随机数,不可含中划线) | 123 |
| PrivateKey | 鉴权密钥(在123云盘管理后台设置) | 289ds32418bxdba |
| auth_key | 最终生成的鉴权参数 | 1689220731-123-13-3bdacc0e0... |
4. 官方代码实现示例
PHP
1 | |
Java
1 | |
Python
1 | |
Go
1 | |
C#
1 | |
5. 配置步骤
- 开启鉴权:登录 123云盘直链管理控制台,在右下角“鉴权管理”区域点击开启。
- 设置密钥:输入自定义的鉴权密钥(PrivateKey),并同步更新到您的应用服务器。
- 部署算法:参考上述代码实现,确保
URI包含/UID/前缀。 - 测试验证:
- 验证正常链接。
- 故意修改随机数或时间戳,验证 403 拦截情况。
6. 注意事项
- URI 规范:签名用的 URI 必须以
/开头,且包含完整的 UID 路径。 - 安全性:随机数(Rand)务必保证唯一性或高随机性,防止签名被重放攻击。
123云盘直链鉴权开发手册
https://www.smyqh.com/2026/02/14/123云盘直链鉴权开发手册/