État du service

Le service Object Storage Unit (OSU) est à présent en FIN DE COMMERCIALISATION. Pour en savoir plus, voir Politique de fin de vie.

Vous pouvez uploader un objet local sur un bucket pour créer un backup dans le Cloud ou stocker celui-ci, et le partager avec d'autres utilisateurs.

Puisque la capacité de stockage est limitée par la plateforme de stockage elle-même, les objets ne sont pas limités en taille. Vous pouvez uploader un objet de 1 octet et 5 Gio en une seule commande. Cependant, il est recommandé d'uploader les objets de 100 Mio ou plus en plusieurs parties afin de les uploader plus vite. Pour en savoir plus, voir Créer un multipart upload

Vous pouvez uploader des objets dans vos buckets ou dans le bucket qu'un autre utilisateur a partagé avec vous. Les autres utilisateurs peuvent également uploader des objets dans votre bucket si vous leur avez accordé les permissions appropriées. Pour en savoir plus, voir Référence des Access Control List (ACL).

Vous ne pouvez pas changer la clé d'un objet une fois celui-ci uploadé dans un bucket. Si vous uploadez un objet qui a la même clé qu'un autre objet déjà contenu dans le bucket, l'objet que vous uploadez remplace l'ancien objet. Si le bucket versioning est activé, l'ancien objet est conservé comme version précédente. Pour en savoir plus, voir Activer ou désactiver le versioning d'un bucket.

Par défaut, les objets que vous uploadez sont privés. Cependant, vous pouvez partager les objets que vous avez uploadés dans votre bucket avec d'autres utilisateurs en utilisant une Access Control List (ACL). Pour en savoir plus, voir Référence des Access Control List (ACL).

Cette action renvoie également un ETag. Cet élément est nécessaire pour créer un multipart upload. Pour en savoir plus, voir Créer un multipart upload.


Assurez-vous de ne pas accorder les permissions de public read pour vos données sensibles.

Cette fonctionnalité n'est pas disponible depuis Cockpit. Cette documentation décrit uniquement la procédure à l'aide d'AWS CLI. 

  • Pour uploader un objet local dans un bucket, utilisez la commande put-object suivant cette syntaxe :

    Exemple de requête
    $ aws s3api put-object \
        --profile YOUR_PROFILE \
        --bucket BUCKET \
        --key OBJECT \
        --body usr/bin/YOUR_OBJECT \
        --acl private \
        --content-length 42 \
        --grant-full-control "id=USER_ID, id=USER_ID" \
        --grant-read "id=USER_ID, id=USER_ID" \
        --grant-read-acp "id=USER_ID, id=USER_ID" \
        --grant-write-acp "id=USER_ID, id=USER_ID" \
        --endpoint ENDPOINT

    Cette commande contient les attributs suivants que vous devez spécifier :

    • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d'AWS CLI. Pour en savoir plus, voir Utiliser et configurer AWS CLI.
    • bucket : Le bucket dans lequel vous voulez uploader l'objet.
    • key : Le nom que vous voulez donner à l'objet dans le bucket.

      Vous pouvez utilisez le même préfixe dans les clés de plusieurs objets, au format suivant : prefix/key1, prefix/key2, et ainsi de suite.

      Cette action crée une architecture virtuelle dans votre bucket qui vous permet de retrouver vos objets plus vite lorsque vous les listez. Pour en savoir plus, voir Lister les objets d'un bucket.

       
    • body : Le chemin d'accès vers l'objet sur votre machine.

      • Lorsque vous spécifiez une nouvelle permission, celle-ci remplace toutes les anciennes. Par conséquent, vous devez spécifiez toutes les permissions dans une seule commande.
      • Lorsque vous spécifiez des permissions, vous devez également spécifier votre adresse email. Sinon, vous perdez les permissions pour votre ressource.
      • Si vous êtes le propriétaire du bucket, la seule permission que vous ne pouvez jamais perdre est la gestion de l'ACL.

      Pour en savoir plus à propos des permissions existantes, voir Obtenir des informations sur l'ACL d'un bucket et Obtenir des informations sur l'ACL d'un objet.

    • (optionnel) acl : Les permissions que vous accordez pour votre objet (private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control).
    • (optionnel) content-length : Si la taille ne peut pas être définie automatiquement, la taille de l'objet en octets.
    • (optionnel) grant-full-control : Un ou plusieurs ID d'utilisateurs auxquels vous accordez la permission full-control.
    • (optionnel) grant-read : Un ou plusieurs ID d'utilisateurs auxquels vous accordez la permission read.
    • (optionnel) grant-read-acp : Un ou plusieurs ID d'utilisateurs auxquels vous accordez la permission read-acp.
    • (optionnel) grant-write-acp : Un ou plusieurs ID d'utilisateurs auxquels vous accordez la permission write-acp.

      • Lorsque vous utilisez OOS, vous devez spécifier des ID utilisateur S3. Vous pouvez récupérer les ID utilisateur S3 via les méthodes Lister vos buckets et Lister les objets d'un bucket en utilisant l'endpoint oos.
      • Lorsque vous utilisez OSU, vous devez spécifier des ID de comptes OUTSCALE.
      • Dans les deux cas, vous pouvez également spécifier des adresses email utilisateur en utilisant le format emailaddress=name@domain.com.
    • endpoint : Le endpoint correspondant au service (oos ou osu) et à la Région auxquels vous voulez envoyer la requête, selon le format suivant : https://<SERVICE>.<REGION>.outscale.com


La commande put-object renvoie l'élément suivant :

    • ETag : L'ETag de votre objet dont vous avez besoin pour utiliser les commandes multipart upload. Pour en savoir plus, voir Créer un multipart upload.

    Exemple de résultat
    {
        "ETag": "\"fae0000b0d0000fababdd00e0a000000\""
    }

    L'objet est uploadé sur le bucket.
     

    • Vous pouvez également effectuer cette action en utilisant une commande s3 suivant cette syntaxe :

      $ aws s3 cp --profile YOUR_PROFILE LOCAL_PATH/OBJECT_TO_UPLOAD s3://YOUR_BUCKET --endpoint ENDPOINT
    • Vous pouvez également gérer vos ressources de stockage objet en utilisant des commandes s3cmd. Pour en savoir plus, voir s3cmd (disponible en anglais uniquement).
Tutoriel : Configurer un bucket avec des objets

Étape précédente :

(optionnel) Configurer l'ACL d'un bucket

Étape suivante :

(optionnel) Configurer l'ACL d'un objet

Tutoriel : Copier une OMI vers d'autres Régions (API)


AWS™ et Amazon Web Services™ sont des marques de commerce d'Amazon Technologies, Inc. ou de ses affiliées aux États-Unis et/ou dans les autres pays.