tencent cloud

All product documents
Cloud Object Storage
Hotlink Protection
Last updated: 2024-02-02 16:51:03
Hotlink Protection
Last updated: 2024-02-02 16:51:03

Overview

This document provides an overview of APIs and SDK code samples related to bucket referer allowlist or blocklist.
Note:
COS Java SDK v5.6.52 or later is required.
API
Operation
Description
Setting bucket referer configuration
Sets a bucket referer allowlist or blocklist
Querying bucket referer configuration
Queries a bucket referer allowlist or blocklist

Setting Bucket Referer Configuration

Description

This API (PUT Bucket referer) is used to set a referer allowlist/blocklist for a bucket.

Method prototype

public void setBucketRefererConfiguration(String bucketName, BucketRefererConfiguration configuration) throws CosClientException, CosServiceException;

public void setBucketRefererConfiguration(SetBucketRefererConfigurationRequest setBucketRefererConfigurationRequest) throws CosClientException, CosServiceException;

Sample request

// Source bucket name, including appid
String bucketName = "examplebucket-1250000000";

BucketRefererConfiguration configuration = new BucketRefererConfiguration();

// Enable hotlink protection
configuration.setStatus(BucketRefererConfiguration.DISABLED);
// Set the hotlink protection type to allowlist
//configuration.setRefererType(BucketRefererConfiguration.WHITELIST);
// Set the hotlink protection type to blocklist (either allowlist or blocklist)
configuration.setRefererType(BucketRefererConfiguration.BLACKLIST);

// Enter the domain name to be set
configuration.addDomain("test.com");
configuration.addDomain("test.1.com");

// (Optional) Set whether to allow access with an empty referer (default value: DENY)
configuration.setEmptyReferConfiguration(BucketRefererConfiguration.DENY);
// configuration.setEmptyReferConfiguration(BucketRefererConfiguration.ALLOW);

cosClient.setBucketRefererConfiguration(bucketName, configuration);

Parameter description

Parameter
Description
Type
bucketName
Bucket name in the format of BucketName-APPID. For details, see Naming Conventions
String
configuration
Referer configuration of a bucket
BucketRefererConfiguration
BucketRefererConfiguration description:
Parameter
Description
Type
Required
Method
Status
Whether to enable hotlink protection. Enumerated values: Enabled, Disabled
String
Yes
setStatus
RefererType
Hotlink protection type. Enumerated values: Black-List, White-List
String
Yes
setRefererType
Domain
Effective domain name. Supports one or multiple domain names with port numbers and IPs. The wildcard * is also supported.
String
Yes
addDomain
EmptyReferConfiguration
Whether to allow access with an empty referer. Enumerated values: Allow, Deny
String
No
setEmptyReferConfiguration

Response description

Success: No value is returned.
Failure: If an error (such as authentication failure) occurs, the CosClientException or CosServiceException exception will be thrown. For more information, please see Troubleshooting.

Querying Bucket Referer Configuration

Description

This API (GET Bucket referer) is used to query the referer allowlist/blocklist of a bucket.

Method prototype

public BucketRefererConfiguration getBucketRefererConfiguration(String bucketName) throws CosClientException, CosServiceException

Sample request

// Source bucket name, including appid
String bucketName = "examplebucket-1250000000";

BucketRefererConfiguration configuration = cosClient.getBucketRefererConfiguration(bucketName);

if (configuration == null) {
System.out.printf("bucket %s does not have referer configuration\n", bucketName);
return;
}

System.out.printf("status: %s\n", configuration.getStatus());
System.out.printf("referer type: %s\n", configuration.getRefererType());
System.out.printf("empty referer config: %s\n", configuration.getEmptyReferConfiguration());

for (String domain : configuration.getDomainList()) {
System.out.printf("domain: %s\n", domain);
}

Parameter description

Parameter
Description
Type
bucketName
Bucket name in the format of BucketName-APPID. For details, see Naming Conventions
String

Response description

Success: The referer allowlist or blocklist of the bucket is returned.
Failure: If an error (such as authentication failure) occurs, the CosClientException or CosServiceException exception will be thrown. For more information, please see Troubleshooting.
Was this page helpful?
You can also Contact Sales or Submit a Ticket for help.
Yes
No

Feedback

Contact Us

Contact our sales team or business advisors to help your business.

Technical Support

Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

7x24 Phone Support