Aller au contenu principal

Passer à la 1.4.1

La 1.4.1 est une version de sécurité. Certains correctifs changent le comportement du serveur : vérifiez-les avant la mise à jour.

Mettre à jour​

  1. Sauvegardez le répertoire de données, le fichier des utilisateurs et la clé maître.

  2. Vérifiez les changements ci-dessous.

  3. Passez le tag de l'image à ghcr.io/loch-sh/s3:1.4.1 et redémarrez :

    docker compose pull s3 && docker compose up -d s3

Changements de comportement​

ChangementEffetQue faire
Les politiques avec Condition, NotAction, NotResource, NotPrincipal ou une action invalide sont refuséesUne politique enregistrée par une version précédente avec ces champs ne s'applique plus : le bucket devient privé (root et propriétaire uniquement)Avant la mise à jour, lisez chaque politique avec get-bucket-policy et réécrivez-la sans ces champs
Le Deny explicite l'emporte sur les ACLUne ACL public-read n'ouvre plus les objets qu'une politique refuseRien, sauf si vous comptiez sur ce comportement
Les envois lents sont coupésUn envoi sous 4096 octets/s sur 60 secondes échoue avec RequestTimeoutPour les liaisons lentes, baissez S3_MIN_UPLOAD_RATE ou mettez-le à 0
Le quota compte les fichiers de métadonnées et les ACLL'utilisation affichée augmente légèrementVérifiez la marge sous S3_MAX_STORAGE_BYTES
Les clés non canoniques sont refuséesLes clés avec un segment ., .. ou vide (a//b, ./x) échouent en 400Les objets écrits auparavant sous ces clés restent accessibles par leur clé normalisée (a/b, x)
Signatures plus stricteshost et chaque en-tête x-amz-* doivent être signés ; le corps doit correspondre au hash signéLes SDK standards s'y conforment. Vérifiez les clients faits maison

Nouvelles variables : S3_MIN_UPLOAD_RATE et S3_MAX_CONNECTIONS. Voir Référence de configuration.

Bon à savoir​

  • Mise à jour depuis la 1.2 ou antérieure : un crash pouvait laisser des fichiers {name}.{uuid}.tmp à côté des objets. Ils apparaissent désormais comme des objets ordinaires : supprimez-les comme n'importe quel objet.