本文介绍如何使用防盗链。
为了防止您在OSS上的数据被其他人盗链而产生额外费用,您可以设置防盗链功能,包括以下参数:
- Referer白名单。仅允许指定的域名访问OSS资源。
- 是否允许空Referer。如果不允许空Referer,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问OSS资源。
更多关于防盗链的介绍,请参见开发指南中的设置防盗链。
设置Referer白名单
通过Bucket#referer=
设置Referer白名单。
require 'aliyun/oss' client = Aliyun::OSS::Client.new( endpoint: 'endpoint', access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret') bucket = client.get_bucket('my-bucket') bucket.referer = BucketReferer.new( allow_empty: true, whitelist: ['example.com', '*.example.com'])
查看Referer白名单
通过Bucket#referer=
查看Referer白名单。
require 'aliyun/oss' client = Aliyun::OSS::Client.new( endpoint: 'endpoint', access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret') bucket = client.get_bucket('my-bucket') ref = bucket.referer puts ref.to_s
清空Referer白名单
通过Bucket#referer=
清空Referer白名单。
require 'aliyun/oss' client = Aliyun::OSS::Client.new( endpoint: 'endpoint', access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret') bucket = client.get_bucket('my-bucket') bucket.referer = BucketReferer.new(allow_empty: true, whitelist: [])