最近更新时间:2022-07-25
本文介绍如何使用防盗链。
为了防止您在UOS上的数据被其他人盗链而产生额外费用,您可以设置防盗链功能,包括以下参数:
Referer白名单。仅允许指定的域名访问UOS资源。
是否允许空Referer。如果不允许空Referer,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问UOS资源。
更多关于防盗链的介绍,请参见用户指南中的防盗链。设置防盗链的完整代码请参见GitHub。
以下代码用于设置防盗链:
from src.ossConfig import ossConfig import Oss as Oss
access_key = 'XXXXXXXXX' secret_key = 'XXXXXXXXXXXXXXXXXXX' endpoint_url = 'http://XXXXXXXXXXXXXXXXX.com' config = ossConfig(access_key,secret_key,endpoint_url)
bucket_name = 'test1'
#以下规则为允许指定指定url访问,若想拒绝指定url访问,可将Effect设置为Deny, #同时,若想允许或指定IP地址访问,可在Condition中更改。 BucketPolicy = '''{ "Version": "2012-10-17", "Id": "http Referer policy example", "Statement": [ { "Sid": "Allow get requests referred by url test1||Referer", "Effect":"Allow", "Principal": { "AWS":"*" }, "Action":["s3:GetObject"], "Resource":[ "arn:aws:s3:::''' + bucket_name + '''", "arn:aws:s3:::''' + bucket_name + '''/*" ], "Condition": {"StringLike":{"aws:Referer":["http://www.genltemen.com/*","http://genltemen.com/*"]}} } ] }'''
response = Oss.put_policy(config,bucket_name,BucketPolicy) if response: print(response) else: print('error') |
以下代码用于清空防盗链:
from src.ossConfig import ossConfig import Oss as Oss |