tencent cloud

边缘安全加速平台 EO

动态与公告
产品动态
安全公告
产品公告
产品简介
产品概述
产品优势
应用场景
EdgeOne 与 CDN 等产品功能对比
使用限制
购买指南
试用套餐体验权益说明
免费版套餐使用说明
计费概述
计费项目
购买指引
续费指引
欠费与退款说明
套餐选型对比
关于“干净流量”计费说明
DDoS 防护容量说明
快速入门
选择业务场景
快速接入网站安全加速
通过 Pages 快速部署网站
域名服务与源站配置
域名服务
HTTPS 证书
源站配置
站点加速
概述
访问控制
智能加速
缓存配置
文件优化
网络优化
URL 重写
修改头部
修改应答内容
规则引擎
图片与视频处理
单连接下载限速
DDoS 与 Web 防护
概述
DDoS 防护
Web 防护
Bot 管理
API 资产识别(Beta)
边缘函数
概述
快速指引
操作指引
Runtime APIs
示例函数
实践教程
Pages
四层代理
概述
新建四层代理实例
修改四层代理实例配置
停用/删除四层代理实例
批量配置转发规则
获取客户端真实IP
数据分析与日志服务
日志服务
数据分析
告警服务
站点与计费管理
计费管理
站点管理
版本管理
通用策略
通用参考
配置语法
请求与响应行为
国家/地区及对应代码枚举
Terraform
Terraform 简介
安装和配置 Terraform
实践教程
自动预热/清除缓存
防盗刷/盗链实践
HTTPS 相关实践
加速优化
流量调度
数据分析与告警
第三方日志平台集成实践
对象存储类源站(例如:COS)配置实践
跨域响应配置
API 文档
History
Introduction
API Category
Making API Requests
Site APIs
Acceleration Domain Management APIs
Site Acceleration Configuration APIs
Edge Function APIs
Alias Domain APIs
Security Configuration APIs
Layer 4 Application Proxy APIs
Content Management APIs
Data Analysis APIs
Log Service APIs
Billing APIs
Certificate APIs
Origin Protection APIs
Load Balancing APIs
Diagnostic Tool APIs
Custom Response Page APIs
API Security APIs
DNS Record APIs
Content Identifier APIs
Legacy APIs
Ownership APIs
Image and Video Processing APIs
Multi-Channel Security Gateway APIs
Version Management APIs
Data Types
Error Codes
常见问题
产品特性相关问题
DNS 记录相关问题
域名配置相关问题
站点加速相关问题
数据与日志相关问题
安全防护相关问题
源站配置相关问题
排障指南
异常状态码参考
EdgeOne 4XX/5XX 状态码排障指南
520/524状态码排障指南
521/522 状态码排障指南
工具指南
相关协议
Service Level Agreement
源站防护启用特别约定
TEO 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

鉴权方式 V

PDF
聚焦模式
字号
最后更新时间: 2025-04-01 14:43:54

功能简介

为了强化视频场景的权限控制能力,EO 推出了 TypeV 鉴权的解决方案。该方案具备的能力如下:
支持在 URL 中指定过期时间,他人获取后无法长期使用;
支持在 URL 中将客户端 IP 纳入签名计算,他人获取后无法访问;
支持在 URL 中指定试看时长,实现试看功能;
支持在 URL 中指定 Referer 黑白名单;
支持在 URL 中指定从某个 unix 时间戳开始播放视频,实现伪直播功能;
开发者使用密钥KEY对 URL 签名,并在 URL 中带上签名结果。只要用户密钥不泄露,其他用户无法伪造加密 URL;
EdgeOne 节点检查加密 URL 中的参数和签名,对访问请求进行控制。如果请求检查不通过,则返回 403 响应码。

鉴权参数

如下为鉴权 URL 中各个参数的含义和取值方法。
参数名
必选
说明
KEY
开启 TypeV 鉴权时填写的密钥。由大小写字母(a -Z)、数字(0-9)以及特殊字符("$除外)组成,长度在6-40个字符之间。支持在控制台中随机生成。
Path
原始 URL 的 PATH 部分。如果原始 URL 为 http://example.vod2.myqcloud.com/dir1/dir2/myVideo.mp4,则 Path 为 /dir1/dir2/myVideo.mp4。
t
访问 URL 的过期时间戳,单位为秒,以 Unix 时间的十六进制小写形式表示。
过期后该 URL 将不再有效,返回 403 响应码。考虑到机器之间可能存在时间差,鉴权 URL 的实际过期时间一般比指定的过期时间长 5 分钟,即额外给出 300 秒的容差时间。
建议过期时间戳不要过短,确保在有效时间内用户可完成下载或视频播放。
exper
试看时长,单位为秒,以十进制表示,不填或者填 0 表示不试看(即返回完整视频)。
试看时长不要超过视频原始时长,否则可能导致播放失败。
us
链接标识,用于随机化一个鉴权 URL,增强链接的唯一性。
建议每次生成鉴权 URL 时,指定一个随机的 us 值。
plive
单位为秒,以 Unix 时间的十六进制小写形式表示。用于实现伪直播功能,实现从指定的时间开始播放视频。
示例:若 plive 的值为 669f9b40,则代表对应加密请求的资源需要在 2024-07-23 20:00:00 后才允许访问。
whref
允许访问的域名来源列表,支持 1 条 - 10 条,用半角逗号分隔。域名前不要带协议名(http://和 https://),域名为完整匹配(如填写 abc.com,则仅能匹配到 abc.com,无法匹配到 abc.com.cn),且支持通配符(如 *.abc.com)。
bkref
禁止访问的域名来源列表,支持 1 条 - 10 条,用半角逗号分隔。域名前不要带协议名(http://和 https://),域名为完整匹配(如填写 abc.com,则仅能匹配到 abc.com,无法匹配到 abc.com.cn),且支持通配符(如 *.abc.com)。
whip
允许访问的客户端 IP 列表,支持 1 个 - 10 个,多个用半角逗号分隔。客户端 IP 支持 IP 以及 IP 段,如 192.168.0.0 或 192.168.0.0/24。其中,0.0.0.0/0 代表所有 ipv4,::/0 代表所有 ipv6。
客户端 IP 通过 X-Forwarded-For 头部 获取,当该头部值有多个时,则取第一个值。
bkip
禁止访问的客户端 IP 列表,支持 1 个 - 10 个,多个用半角逗号分隔。客户端 IP 支持 IP 以及 IP 段,如 192.168.0.0 或 192.168.0.0/24。其中,0.0.0.0/0 代表所有 ipv4,::/0 代表所有 ipv6。
客户端 IP 通过 X-Forwarded-For 头部 获取,当该头部值有多个时,则取第一个值。
sign
防盗链签名,以 40 个字符长的十六进制数表示,用于校验鉴权 URL 的合法性,签名校验失败将返回 403 响应码。计算方式参考:签名计算公式
说明:
对于 VOD 源站,支持上述全部参数,对于非 VOD 源站,不支持 us、plive 参数。

签名计算公式

sign = sha1(KEY + Path + t + plive + exper + us + whref + bkref + whip + bkip)
公式中的+代表字符串拼接,选填参数可以为空字符串。

防盗链 URL 生成规则

在原始 URL 尾部,以 QueryString 的方式加入防盗链参数,形如:
http://example.vod2.myqcloud.com/dir1/dir2/myVideo.mp4?t=[t]&exper=[exper]&us=[us]&whref=[whref]&whip=[whip]&sign=[sign]
注意:
公式中的+代表字符串拼接,选填参数可以为空字符串;
进行签名计算时,各参数必须严格按照签名计算公式的顺序,如果顺序不正确则会生成错误的签名。

配置示例

假设原始 URL 是 http://example.vod2.myqcloud.com/dir1/dir2/myVideo.mp4。该开发者配置了 TypeV 鉴权,生成的密钥是24FEQmTzro4V5u3D5epW,生成的随机字符串为 72d4cd1101
下面分别对“视频播放地址有效时间控制”、“同一鉴权 URL 仅允许一个客户端 IP 播放”和“视频允许播放客户端 IP”的场景,介绍如何生成鉴权 URL。


示例1:播放地址有效时间控制

若您需要为这个视频生成鉴权 URL,URL 的过期时间是 2018 年 01 月 31 日 20:00(Unix 时间为 1517400000),请参照如下步骤。

步骤1:确定鉴权参数

参数名
取值
说明
KEY
24FEQmTzro4V5u3D5epW
开发者开通 Key 防盗链时选择的密钥
Dir
/dir1/dir2/myVideo.mp4
原始 URL 的 Path 部分
t
5a71afc0
过期时间戳 1517400000 的十六进制表示结果
us
72d4cd1101
生成的随机字符串

步骤2:计算签名

sign = sha1("24FEQmTzro4V5u3D5epW/dir1/dir2/myVideo.mp45a71afc072d4cd1101") = "3ff5ab708b018fce5c3023b6d27ca938d7ab75e3"

步骤3:生成鉴权 URL

将鉴权参数拼接到视频原始 URL 的 QueryString 中,得到视频鉴权 URL:
http://example.vod2.myqcloud.com/dir1/dir2/myVideo.mp4?t=5a71afc0&us=72d4cd1101&sign=3ff5ab708b018fce5c3023b6d27ca938d7ab75e3

示例2:同一鉴权 URL 仅允许一个客户端 IP 访问

若您需要限制同一鉴权 URL 仅允许一个客户端 IP 访问,请参照如下步骤。

步骤1:确定鉴权参数

参数名
取值
说明
KEY
24FEQmTzro4V5u3D5epW
开发者开通 Key 防盗链时选择的密钥
Path
/dir1/dir2/myVideo.mp4
原始 URL 的 Path 部分
t
5a71afc0
过期时间戳 1517400000 的十六进制表示结果
us
72d4cd1101
生成的随机字符串
whip
192.168.0.0
允许访问的客户端 IP

步骤2:计算签名

sign = sha1(24FEQmTzro4V5u3D5epW/dir1/dir2/5a71afc072d4cd1101192.168.0.0) = "c8cd894ef4ee0387c99ac488f46bbe8205bc63af"

步骤3:生成鉴权 URL

将鉴权参数拼接到视频原始 URL 的 QueryString 中,得到视频鉴权 URL:
http://example.vod2.myqcloud.com/dir1/dir2/myVideo.mp4?t=5a71afc0&us=72d4cd1101&whip=192.168.0.0&sign=c8cd894ef4ee0387c99ac488f46bbe8205bc63af

示例3:允许播放时长控制

若您需要生成一个试看 URL,试看时长为视频的前 5 分钟(视频原始时长大于 5 分钟),请参照如下步骤。

步骤1:确定鉴权参数

参数名
取值
说明
KEY
24FEQmTzro4V5u3D5epW
开发者开通 Key 防盗链时选择的密钥
Path
/dir1/dir2/myVideo.mp4
原始 URL 的 Path 部分
t
5a71afc0
过期时间戳 1517400000 的十六进制表示结果
exper
300
试看前 5 分钟,即 300 秒
us
72d4cd1101
生成的随机字符串

步骤2:计算签名

sign = sha1(24FEQmTzro4V5u3D5epW/dir1/dir2/myVideo.mp45a71afc030072d4cd1101) = "3a50217aff3e39fbf795b8db40925bc61735fe83"

步骤3:生成鉴权 URL

将鉴权参数拼接到视频原始 URL 的 QueryString 中,得到视频鉴权 URL:
http://example.vod2.myqcloud.com/dir1/dir2/myVideo.mp4?t=5a71afc0&exper=300&us=72d4cd1101&sign=3a50217aff3e39fbf795b8db40925bc61735fe83


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈