Configurez la protection contre le hotlinking d’un compartiment Object Storage Service (OSS) pour empêcher tout accès non autorisé à vos ressources. Cette rubrique explique comment exécuter la commande referer afin de configurer, modifier, interroger ou supprimer la protection contre le hotlinking d’un compartiment.
Notes d'utilisation
Pour créer ou modifier les configurations de protection contre le hotlinking, vous devez disposer de l’autorisation
oss:PutBucketReferer. Pour les interroger, l’autorisationoss:GetBucketRefererest requise. Pour les supprimer, vous devez avoir l’autorisationoss:DeleteBucketReferer. Pour plus d’informations, consultez la section Accorder une stratégie personnalisée.
À partir de la version 1.6.16 d’ossutil, utilisez directement
ossutilcomme nom binaire dans la ligne de commande. Il n’est pas nécessaire d’adapter ce nom au système d’exploitation. Pour les versions antérieures à 1.6.16, adaptez le nom binaire selon votre système d’exploitation. Pour plus de détails, reportez-vous au guide Prise en main rapide de l'outil de ligne de commande ossutil.Pour en savoir plus sur la protection contre le hotlinking, consultez la documentation relative à la Protection contre le hotlinking.
Créer ou modifier les configurations de protection contre le hotlinking
Si aucune protection contre le hotlinking n’est configurée pour un compartiment, la commande referer suivante active cette protection. Si une configuration existe déjà, la commande écrase les paramètres actuels.
Exécutez la commande suivante pour configurer ou modifier la protection contre le hotlinking d’un compartiment :
-
Syntaxe de la commande
ossutil referer --method put oss://bucketname refererconfig [--disable-empty-referer]Le tableau ci-dessous décrit les paramètres et options utilisés dans cette syntaxe.
Paramètre/Option
Description
bucketname
Nom du compartiment pour lequel vous souhaitez créer ou modifier les configurations de protection contre le hotlinking.
refererconfig
Noms de domaine ou adresses IP à ajouter à la liste blanche Referer. Vous pouvez utiliser les caractères génériques astérisque (*) et point d’interrogation (?). Si vous spécifiez plusieurs referers, séparez-les par des espaces. Exemples :
-
Si vous ajoutez
http://www.aliyun.comà la liste blanche Referer, les URL commençant par http://www.aliyun.com, telles que http://www.aliyun.com/123 et http://www.aliyun.com.cn, seront mises en correspondance. -
Si vous ajoutez
*www.aliyun.comà la liste blanche Referer, les URL contenantwww.aliyun.com, comme http://www.aliyun.com et https://www.aliyun.com, seront mises en correspondance. -
L’astérisque () sert de caractère générique représentant zéro ou plusieurs caractères. Par exemple, si vous ajoutez
.aliyun.com à la liste blanche Referer, des URL telles que https://www.alibabacloud.com/help et https://www.aliyun.com seront mises en correspondance. -
Le point d’interrogation (?) agit comme un caractère générique représentant un seul caractère.
-
Vous pouvez ajouter des noms de domaine ou des adresses IP suivis de numéros de port, tels que https://www.example.com:8080 et https://10.0.0.0:8080, à la liste blanche Referer.
--disable-empty-referer
Indique si les requêtes avec un champ Referer vide sont autorisées.
-
Si ce paramètre n’est pas spécifié, les requêtes avec un champ Referer vide sont autorisées. Les requêtes HTTP ou HTTPS incluant un champ Referer vide ou ne comportant pas ce champ sont acceptées.
-
Si ce paramètre est spécifié, les requêtes avec un champ Referer vide sont refusées. Seules les requêtes HTTP ou HTTPS contenant un champ Referer avec une valeur valide peuvent accéder au compartiment.
-
-
Exemples
Configurez la protection contre le hotlinking pour le compartiment examplebucket afin d’autoriser le domaine
www.aliyun.comà référencer les objets du compartiment, tout en refusant l’accès aux objets via la saisie directe de leur URL dans la barre d’adresse d’un navigateur.ossutil referer --method put oss://examplebucket http://www.aliyun.com https://www.aliyun.com --disable-empty-refererConfigurez la protection contre le hotlinking pour le compartiment examplebucket afin d’autoriser le domaine
www.aliyun.comà référencer les objets du compartiment, tout en permettant l’accès aux objets via la saisie directe de leur URL dans la barre d’adresse d’un navigateur.ossutil referer --method put oss://examplebucket http://www.aliyun.com https://www.aliyun.comLa sortie suivante indique que la protection contre le hotlinking a été configurée pour le compartiment :
0.134839(s) elapsed
Interroger les configurations de protection contre le hotlinking d’un compartiment
-
Syntaxe de la commande
ossutil referer --method get oss://bucketname [local_xml_file]Le tableau suivant décrit les paramètres de la commande précédente.
Paramètre
Description
bucketname
Nom du compartiment dont vous souhaitez interroger les configurations de protection contre le hotlinking.
local_xml_file
Nom du fichier local dans lequel vous souhaitez stocker les configurations de protection contre le hotlinking du compartiment. Exemple :
localfile.txt. Si ce paramètre n’est pas spécifié, les configurations s’affichent à l’écran. -
Exemples
-
Interrogez les configurations de protection contre le hotlinking du compartiment examplebucket et stockez-les dans le fichier
localfile.txt.ossutil referer --method get oss://examplebucket localfile.txtLa sortie suivante indique que les configurations de protection contre le hotlinking ont été récupérées.
0.212407(s) elapsed -
Interrogez les configurations de protection contre le hotlinking du compartiment examplebucket et affichez-les.
ossutil referer --method get oss://examplebucketLa sortie suivante indique que seules les requêtes HTTP ou HTTPS dont les en-têtes Referer correspondent à
*www.aliyun.comsont autorisées à accéder au compartiment examplebucket, et que les requêtes avec un champ Referer vide sont refusées.<?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>false</AllowEmptyReferer> <RefererList> <Referer>*www.aliyun.com</Referer> </RefererList> </RefererConfiguration> 0.080482(s) elapsed
-
Supprimer les configurations de protection contre le hotlinking d’un compartiment
-
Syntaxe de la commande
ossutil referer --method delete oss://bucketnameDans cette syntaxe, bucketname désigne le nom du compartiment dont vous souhaitez supprimer les configurations de protection contre le hotlinking.
-
Exemples
Supprimez les configurations de protection contre le hotlinking du compartiment examplebucket.
ossutil referer --method delete oss://examplebucketLa sortie suivante indique que les configurations de protection contre le hotlinking du compartiment ont été supprimées.
0.212409(s) elapsed
Options courantes
Pour accéder à un compartiment situé dans une autre région, utilisez -e pour spécifier l’endpoint. Pour accéder à un compartiment appartenant à un autre compte Alibaba Cloud, utilisez -i pour l’AccessKey ID et -k pour l’AccessKey Secret.
La commande suivante illustre la configuration de la protection contre le hotlinking pour le compartiment testbucket, situé dans la région Chine (Hangzhou) et appartenant à un autre compte Alibaba Cloud :
ossutil referer --method put oss://testbucket www.alibabacloud.com -e oss-cn-hangzhou.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret