Configure la protection contre l'écrasement d'un bucket pour empêcher l'écrasement d'objets spécifiques.
Précautions
Dans les scénarios d'écriture à forte concurrence, par exemple lorsque plusieurs clients écrivent simultanément dans un chemin inexistant ou pendant une suppression, le système peut initialement autoriser les écritures car aucun fichier n'existe à écraser. Toutefois, une fois le fichier créé, la règle bloque toutes les tentatives d'écrasement ultérieures.
La configuration de
forbiduniquement empêche l'écrasement en toutes circonstances, ce qui présente un risque élevé.-
PutBucketOverwriteConfig utilise la sémantique d'écrasement. Par exemple, si un bucket possède déjà une règle nommée Rule1 et que vous souhaitez ajouter Rule2, procédez comme suit :
Appelez GetBucketOverwriteConfig pour récupérer la configuration actuelle contenant Rule1.
Ajoutez Rule2 à la configuration récupérée.
Appelez PutBucketOverwriteConfig pour télécharger la nouvelle configuration contenant à la fois Rule1 et Rule2.
Si GetBucketOverwriteConfig renvoie une erreur 404, aucune protection contre l'écrasement n'est configurée pour le bucket. Vous pouvez appeler directement PutBucketOverwriteConfig pour définir une nouvelle règle.
Un seul bucket peut comporter au maximum 100 règles de protection contre l'écrasement.
La longueur maximale du préfixe (Prefix) et du suffixe (Suffix) est de 1 023 caractères.
Chaque règle peut comporter au plus un préfixe et un suffixe. Les préfixes et les suffixes ne prennent pas en charge les expressions régulières. Si vous saisissez un astérisque (*), il est traité comme une chaîne de caractères.
L'ID est facultatif. S'il n'est pas spécifié, un UUID est généré aléatoirement. S'il est spécifié, il doit être unique parmi toutes les règles du bucket.
Principal prend en charge le caractère générique astérisque (*). Pour plus d'informations, consultez Exemples de politiques de bucket.
Une règle n'est appliquée que lorsque toutes ses conditions de filtrage (Prefix, Suffix et Principals) sont remplies. Si une règle correspond, la demande d'écrasement est refusée.
Autorisations
Un compte Alibaba Cloud dispose de toutes les autorisations par défaut. Les utilisateurs RAM et les rôles RAM ne disposent d'aucune autorisation par défaut. Vous devez accorder des autorisations à l'aide d'une politique RAM ou d'une politique de bucket.
|
API |
Action |
Description |
|
PutBucketOverwriteConfig |
|
Configure la protection contre l'écrasement d'un bucket. |
Syntaxe de la requête
PUT /?overwriteConfig HTTP/1.1
Host: bucket-name.oss-cn-hangzhou.aliyuncs.com
Authorization: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<OverwriteConfiguration>
<Rule>
<ID>string</ID>
<Action>forbid</Action>
<Prefix>string</Prefix>
<Suffix>string</Suffix>
<Principals>
<Principal>string</Principal>
</Principals>
</Rule>
</OverwriteConfiguration>
En-têtes de requête
Cette opération utilise uniquement des en-têtes de requête communs. Pour plus d'informations, consultez En-têtes de requête communs.
Éléments de requête
|
Nom |
Type |
Obligatoire |
Exemple |
Description |
|
OverwriteConfiguration |
Conteneur |
Oui |
Aucun |
Nœud racine de la configuration de protection contre l'écrasement. Nœud enfant : Rule. Nœud parent : Aucun. |
|
Rule |
Conteneur |
Oui |
Aucun |
Règle de protection contre l'écrasement. Un bucket peut comporter au maximum 100 règles. Nœuds enfants : ID, Action, Prefix, Suffix, Principals. Nœud parent : OverwriteConfiguration. |
|
ID |
Chaîne |
Non |
rule-001 |
Identifiant unique de la règle. S'il n'est pas spécifié, un UUID est généré aléatoirement. La valeur doit être unique parmi toutes les règles. Nœud enfant : Aucun. Nœud parent : Rule. |
|
Action |
Chaîne |
Oui |
forbid |
Type d'action. Actuellement, seule |
|
Prefix |
Chaîne |
Non |
a/ |
Préfixe du nom d'objet utilisé pour filtrer les objets cibles. Longueur maximale : 1 023 caractères. Chaque règle prend en charge au plus un préfixe. Les expressions régulières ne sont pas prises en charge. Nœud enfant : Aucun. Nœud parent : Rule. |
|
Suffix |
Chaîne |
Non |
.txt |
Suffixe du nom d'objet utilisé pour filtrer les objets cibles. Longueur maximale : 1 023 caractères. Chaque règle prend en charge au plus un suffixe. Les expressions régulières ne sont pas prises en charge. Nœud enfant : Aucun. Nœud parent : Rule. |
|
Principals |
Conteneur |
Non |
Aucun |
Collection d'entités autorisées, similaire à l'élément Principal dans une politique de bucket. Vous pouvez spécifier un compte Alibaba Cloud, un utilisateur RAM ou un rôle RAM. Si vide ou non configuré, l'écrasement est interdit pour tous les objets correspondant aux conditions de préfixe et de suffixe. Nœud enfant : Principal. Nœud parent : Rule. |
|
Principal |
Chaîne |
Non |
27737962156157xxxx |
Entité autorisée. Vous pouvez spécifier un compte Alibaba Cloud, un utilisateur RAM ou un rôle RAM. Si vide, le paramètre n'est pas valide. Nœud enfant : Aucun. Nœud parent : Principals. |
Éléments de réponse
Cette opération ne renvoie aucun élément de réponse.
En-têtes de réponse
Cette opération utilise uniquement des en-têtes de réponse communs. Pour plus d'informations, consultez En-têtes de réponse communs.
Exemples
-
Exemple de requête
PUT /?overwriteConfig HTTP/1.1 Host: bucket-name.oss-cn-hangzhou.aliyuncs.com Authorization: SignatureValue <?xml version="1.0" encoding="UTF-8"?> <OverwriteConfiguration> <Rule> <ID>rule-001</ID> <Action>forbid</Action> <Prefix>a/</Prefix> <Suffix>.txt</Suffix> <Principals> <Principal>27737962156157xxxx</Principal> </Principals> </Rule> <Rule> <ID>rule-002</ID> <Action>forbid</Action> <Prefix>images/</Prefix> </Rule> <Rule> <ID>rule-003</ID> <Action>forbid</Action> <Suffix>.jpg</Suffix> </Rule> <Rule> <ID>rule-004</ID> <Action>forbid</Action> <Principals> <Principal>27737962156157xxxx</Principal> </Principals> </Rule> </OverwriteConfiguration> -
Exemple de réponse
HTTP/1.1 200 OK x-oss-request-id: 5C4E5B5C5E5F5A5B5C5D5XXX Date: Mon, 25 Nov 2025 15:00:59 GMT