可以使用访问鉴权功能,来限制用户对某些资源的访问,或者防止恶意用户盗刷资源,降低网站的无效带宽损耗。
基本认证
当用户访问网站时就会在浏览器端弹出基本认证窗口:
输入我们在创建鉴权方式时添加的用户名和密码就可以登录访问我们的网站资源。
URL鉴权方式A
示例URL
https://example.com/images/test.jpg?sign=1661824870-c6d1a57067b21f7b-0baac47b6c2ad519bb1bfe7babff37a3
URL生成规则
(http|https)://域名/文件路径?sign=时间戳-随机字符串-Hash值
其中:
域名
– 保留原来的域名,比如example.com
/文件路径
– 文件路径包含了最前面的斜杠(/
)符号,比如/images/test.jpg
时间戳
– Unix时间戳,单位是秒,比如1661824870
随机字符串
– 你自定义的随机字符串,只能包含字母、数字,比如c6d1a57067b21f7b
,也可以是一个固定的值,比如hello
,但固定值会降低安全性Hash值
– 目前只支持MD5 Hash算法,具体为:md5(/文件路径@时间戳@随机字符串@密钥)
其中密钥是你在创建鉴权方式时生成或填写的鉴权密钥;各个字段使用@
符号连接,且文件路径前的斜杠(/
)别忘记填写,也不要重复填写;以密钥为123456
为例:md5("/images/test.jpg@1661824870@c6d1a57067b21f7b@123456") => 0baac47b6c2ad519bb1bfe7babff37a3
结果需要是一个32位的仅包含小写字母和数字的字符串;如果你使用的算法结果是大写的,请转换为小写的
回源规则
常见问题
URL中可以添加其他参数吗?
URL中可以添加其他参数,比如:
https://example.com/images/test.jpg?sign=1661824870-c6d1a57067b21f7b-0baac47b6c2ad519bb1bfe7babff37a3&v=1&from=google
其中 v=1&from=google
参数是自定义参数,可以正确回源到源站。
URL鉴权方式B
示例URL
https://example.com/1661824870/64bf8671521f2a61a3b64691fde82729/images/test.jpg
URL生成规则
(http|https)://域名/时间戳/Hash值/文件路径
其中:
域名
– 保留原来的域名,比如example.com
/文件路径
– 文件路径包含了最前面的斜杠(/
)符号,比如/images/test.jpg
时间戳
– Unix时间戳,单位是秒,比如1661824870
Hash值
– 目前只支持MD5 Hash算法,具体为:md5(/文件路径@时间戳@密钥)
其中密钥是你在创建鉴权方式时生成或填写的鉴权密钥;各个字段使用@
符号连接,且文件路径前的斜杠(/
)别忘记填写,也不要重复填写;以密钥为123456
为例:md5("/images/test.jpg@1661824870@123456") => 64bf8671521f2a61a3b64691fde82729
结果需要是一个32位的仅包含小写字母和数字的字符串;如果你使用的算法结果是大写的,请转换为小写的
回源规则
查找缓存和回源规则时,会自动移除路径中的 时间戳
和 Hash值
。
常见问题
URL中可以添加其他参数吗?
URL中可以添加其他参数,比如:
https://example.com/1661824870/64bf8671521f2a61a3b64691fde82729/images/test.jpg?v=1&from=google
其中 v=1&from=google
参数是自定义参数,可以正确回源到源站。
URL鉴权方式C
示例URL
https://example.com/64bf8671521f2a61a3b64691fde82729/1661824870/images/test.jpg
URL生成规则
(http|https)://域名/Hash值/时间戳/文件路径
其中:
域名
– 保留原来的域名,比如example.com
时间戳
– Unix时间戳,单位是秒,比如1661824870
/文件路径
– 文件路径包含了最前面的斜杠(/
)符号,比如/images/test.jpg
Hash值
– 目前只支持MD5 Hash算法,具体为:md5(/文件路径@时间戳@密钥)
其中密钥是你在创建鉴权方式时生成或填写的鉴权密钥;各个字段使用@
符号连接,且文件路径前的斜杠(/
)别忘记填写,也不要重复填写;以密钥为123456
为例:md5("/images/test.jpg@1661824870@123456") => 64bf8671521f2a61a3b64691fde82729
结果需要是一个32位的仅包含小写字母和数字的字符串;如果你使用的算法结果是大写的,请转换为小写的
回源规则
查找缓存和回源规则时,会自动移除路径中的 Hash值
和 时间戳
。
常见问题
URL中可以添加其他参数吗?
URL中可以添加其他参数,比如:
https://example.com/64bf8671521f2a61a3b64691fde82729/1661824870/images/test.jpg?v=1&from=google
其中 v=1&from=google
参数是自定义参数,可以正确回源到源站。
URL鉴权方式D
示例URL
https://example.com/images/test.jpg?sign=64bf8671521f2a61a3b64691fde82729&t=1661824870
URL生成规则
(http|https)://域名/文件路径?sign=Hash值&t=时间戳
其中:
域名
– 保留原来的域名,比如example.com
/文件路径
– 文件路径包含了最前面的斜杠(/
)符号,比如/images/test.jpg
时间戳
– Unix时间戳,单位是秒,比如1661824870
Hash值
– 目前只支持MD5 Hash算法,具体为:md5(/文件路径@时间戳@密钥)
其中密钥是你在创建鉴权方式时生成或填写的鉴权密钥;各个字段使用@
符号连接,且文件路径前的斜杠(/
)别忘记填写,也不要重复填写;以密钥为123456
为例:md5("/images/test.jpg@1661824870@123456") => 64bf8671521f2a61a3b64691fde82729
结果需要是一个32位的仅包含小写字母和数字的字符串;如果你使用的算法结果是大写的,请转换为小写的
回源规则
常见问题
URL中可以添加其他参数吗?
URL中可以添加其他参数,比如:
https://example.com/images/test.jpg?sign=64bf8671521f2a61a3b64691fde82729&t=1661824870&v=1&from=google
其中 v=1&from=google
参数是自定义参数,可以正确回源到源站。