Carica un oggetto in un bucket S3 on Outposts - Amazon Simple Storage Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Carica un oggetto in un bucket S3 on Outposts

Gli oggetti sono le entità fondamentali archiviate in Amazon S3 su Outposts. Ogni oggetto è contenuto in un bucket. È necessario utilizzare i punti di accesso per accedere a qualsiasi oggetto in un bucket Outpost. Quando specifichi il bucket per le operazioni di oggetto, utilizza il nome della risorsa Amazon (ARN) o l'alias del punto di accesso. Per ulteriori informazioni sugli alias del punto di accesso, consulta Utilizzo di un alias in stile bucket per il punto di accesso del bucket S3 su Outposts.

L'esempio seguente mostra il formato ARN per S3 sui punti di accesso Outposts, che include il Regione AWS codice per la regione in cui risiede l'Outpost, l'ID, l' Account AWS ID Outpost e il nome del punto di accesso:

arn:aws:s3-outposts:region:account-id:outpost/outpost-id/accesspoint/accesspoint-name

Per ulteriori informazioni sugli ARN S3 su Outposts, consulta Risorsa ARNs per S3 su Outposts.

Con Amazon S3 su Outposts, i dati degli oggetti vengono sempre archiviati nell'Outpost. Quando si AWS installa un rack Outpost, i dati rimangono locali rispetto a Outpost per soddisfare i requisiti di residenza dei dati. I tuoi oggetti non lasciano mai il tuo Outpost e non sono in una Regione AWS. Poiché AWS Management Console è ospitato in una regione, non puoi utilizzare la console per caricare o gestire oggetti in Outpost. Tuttavia, puoi utilizzare l'API REST, AWS Command Line Interface (AWS CLI) e gli AWS SDK per caricare e gestire gli oggetti tramite i tuoi punti di accesso.

I seguenti AWS CLI AWS SDK for Java esempi mostrano come caricare un oggetto su un bucket S3 on Outposts utilizzando un punto di accesso.

AWS CLI

Nell'esempio seguente viene inserito un oggetto denominato sample-object.xml in un bucket S3 su Outposts (s3-outposts:PutObject) utilizzando AWS CLI. Per usare questo comando, sostituire user input placeholder con le proprie informazioni. Per ulteriori informazioni su questo comando, consulta put-object nella Guida di riferimento di AWS CLI .

aws s3api put-object --bucket arn:aws:s3-outposts:Region:123456789012:outpost/op-01ac5d28a6a232904/accesspoint/example-outposts-access-point --key sample-object.xml --body sample-object.xml
SDK for Java

Nell'esempio seguente viene inserito un oggetto in un bucket S3 su Outposts utilizzando SDK per Java. Per utilizzare questo esempio, sostituire user input placeholder con le tue informazioni. Per ulteriori informazioni, consulta Caricamento degli oggetti.

import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.ObjectMetadata; import com.amazonaws.services.s3.model.PutObjectRequest; import java.io.File; public class PutObject { public static void main(String[] args) { String accessPointArn = "*** access point ARN ***"; String stringObjKeyName = "*** String object key name ***"; String fileObjKeyName = "*** File object key name ***"; String fileName = "*** Path to file to upload ***"; try { // This code expects that you have AWS credentials set up per: // https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-credentials.html AmazonS3 s3Client = AmazonS3ClientBuilder.standard() .enableUseArnRegion() .build(); // Upload a text string as a new object. s3Client.putObject(accessPointArn, stringObjKeyName, "Uploaded String Object"); // Upload a file as a new object with ContentType and title specified. PutObjectRequest request = new PutObjectRequest(accessPointArn, fileObjKeyName, new File(fileName)); ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentType("plain/text"); metadata.addUserMetadata("title", "someTitle"); request.setMetadata(metadata); s3Client.putObject(request); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it, so it returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }