对象存储 设置防盗链

为了避免恶意程序使用资源 URL 盗刷公网流量或使用恶意手法盗用资源,给用户带来不必要的损失。腾讯云对象存储支持防盗链配置,建议你通过控制台的防盗链设置配置黑/白名单,来进行安全防护。

相关产品
对象存储 产品页,含版本规格、价格与购买入口。

一、使用对象存储控制台

1. 登录 对象存储控制台,在左侧菜单栏中单击存储桶列表,进入存储桶列表页面。

2. 找到你需要设置防盗链的存储桶,单击其存储桶名称,进入存储桶管理页面。

3. 选择安全管理 > 防盗链设置,找到防盗链设置,单击编辑进入可编辑状态。

4. 修改当前状态为开启,选择名单类型(黑名单或白名单),并在 Referer 配置项中输入需添加黑名单或白名单的域名或 IP 地址,确认无误后单击保存即可,配置项说明如下:

·黑名单:选择该项,则 Referer 中的域名或 IP 地址将被拒绝访问存储桶的默认访问地址,并返回403。

·白名单:选择该项,则 Referer 中的域名或 IP 地址将被允许访问存储桶的默认访问地址,其他域名或 IP 将被拒绝访问存储桶的默认访问地址,并返回403。

·空 referer:HTTP 请求中,header 为空 referer(即不带 referer 字段或 referer 字段为空)。

·Referer:填写将要添加到黑名单或白名单中的域名或 IP 地址,支持多行,最多30行,每条一行,多条请换行;支持通配符*,例如*.test.com。举例说明如下:

·配置 www.example.com:可指定 www.example.com/123、www.example.com.cn 等以 www.example.com 为前缀的地址。

·支持带端口的域名和 IP,例如 www.example.com:8080、10.10.10.10:8080 等地址。

·配置 *.example.com:可限制 a.b.example.com/123、a.example.com 等地址。

注意:说明:

注意:如果通过 CDN 域名加速访问,则优先执行 CDN 的防盗链配置,再执行对象存储的防盗链规则。

二、使用 REST API/SDK

你可以通过以下 API 设置防盗链:

·PUT Bucket referer

·GET Bucket referer

你可以直接调用 SDK 设置防盗链,详情请参见下列各语言 SDK 文档:

Android、C、C++、.NET、Go、iOS、Java、JavaScript、Node.js、PHP、Python、小程序。

三、示例

APPID 为1250000000的用户创建了一个名为 examplebucket-1250000000的存储桶,并在根目录下放置了一张图片 picture.jpg,COS 根据规则生成了一个默认访问地址 :

examplebucket-1250000000.file.myqcloud.com/picture.jpg

用户 A 拥有网站:

www.example.com

并将该图片嵌入了首页 index.html 中。

此时站长 B 持有网站:

www.fake.com

站长 B 想把这张图片放入 www.fake.com 中。由于不想付流量费用,他便直接通过以下地址引用了 picture.jpg,并放置到 www.fake.com 网站首页 index.html。

examplebucket-1250000000.file.myqcloud.com/picture.jpg

为了避免用户 A 的损失,针对以上状况,我们提供以下两种开启防盗链的方式。

四、开启方式一

配置黑名单模式,域名设置填入 *.fake.com并保存生效。

五、开启方式二

配置白名单模式,域名设置填入 *.example.com并保存生效。

六、开启前

访问 http://www.example.com/index.html 图片显示正常。
访问 http://www.fake.com/index.html 图片也显示正常。

七、开启后

访问 http://www.example.com/index.html 图片显示正常。
访问 http://www.fake.com/index.html 图片无法显示。

八、小程序相关说明

·小程序网络请求的 referer 是固定格式为:https://servicewechat.com/{appid}/{version}/page-frame.html。

·如果存储桶打开了防盗链限制,并且需要允许小程序加载 COS 图片,请在 对象存储控制台 配置防盗链白名单:servicewechat.com。

赞 (0)
上一篇 4天前
下一篇 4天前