

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à.

# CopyObject (API SOAP)
<a name="SOAPCopyObject"></a>

**Nota**  
 Le API SOAP per Amazon S3 non sono disponibili per i nuovi clienti, con la fine del ciclo di vita prevista per il 31 agosto 2025. Ti consigliamo di utilizzare l'API REST o gli AWS SDK. 

## Description
<a name="SOAPCopyObject_Description"></a>

L'`CopyObject`operazione crea una copia di un oggetto quando si specificano la chiave e il bucket di un oggetto sorgente e la chiave e il bucket di una destinazione di destinazione. 

Quando si copia un oggetto, è possibile conservare tutti i metadati (impostazione predefinita) o specificarne di nuovi. Tuttavia, l'ACL non viene conservato ed è impostato `private` per l'utente che effettua la richiesta. Per sovrascrivere l'impostazione ACL predefinita, specifica un nuovo ACL quando generi una richiesta di copia. Per ulteriori informazioni, consulta [Gestione degli accessi con le ACL](https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3_ACLs_UsingACLs.html).

Tutte le richieste di copia devono essere autenticate. Inoltre, è necessario disporre dell'*accesso in * lettura all'oggetto sorgente e dell'*accesso in * scrittura al bucket di destinazione. Per ulteriori informazioni, vedere [ Utilizzo dell'accesso di autenticazione. ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) 

Per copiare un oggetto solo in determinate condizioni, ad esempio se l'Etag corrisponde o se l'oggetto è stato modificato prima o dopo una data specificata, usa i parametri di richiesta`CopySourceIfUnmodifiedSince`, `CopyIfUnmodifiedSince``CopySourceIfMatch`, o. `CopySourceIfNoneMatch` 

**Nota**  
 Potrebbe essere necessario configurare il timeout del socket dello stack SOAP per copiare oggetti di grandi dimensioni. 

## Sintassi della richiesta
<a name="SOAPCopyObject_RequestSyntax"></a>

```
 1. <CopyObject xmlns="http://bucket_name.s3.amazonaws.com/2006-03-01">
 2.   <SourceBucket>source_bucket</SourceBucket>
 3.   <SourceObject>source_object</SourceObject>
 4.   <DestinationBucket>destination_bucket</DestinationBucket>
 5.   <DestinationObject>destination_object</DestinationObject>
 6.   <MetadataDirective>{REPLACE | COPY}</MetadataDirective>
 7.   <Metadata>
 8.     <Name>metadata_name</Name>
 9.     <Value>metadata_value</Value>
10.   </Metadata>
11.   ...
12.   <AccessControlList>
13.     <Grant>
14.       <Grantee xsi:type="user_type">
15.         <ID>user_id</ID>
16.         <DisplayName>display_name</DisplayName>
17.       </Grantee>
18.       <Permission>permission</Permission>
19.     </Grant>
20.     ...
21.   </AccessControlList>
22.   <CopySourceIfMatch>etag</CopySourceIfMatch>
23.   <CopySourceIfNoneMatch>etag</CopySourceIfNoneMatch>
24.   <CopySourceIfModifiedSince>date_time</CopySourceIfModifiedSince>
25.   <CopySourceIfUnmodifiedSince>date_time</CopySourceIfUnmodifiedSince>
26.   <AWSAccessKeyId>AWSAccessKeyId</AWSAccessKeyId>
27.   <Timestamp>TimeStamp</Timestamp>
28.   <Signature>Signature</Signature>
29. </CopyObject>
```

## Parametri della richiesta
<a name="SOAPCopyObject_RequestParameters"></a>


|  Nome  |  Description  |  Richiesto  | 
| --- | --- | --- | 
|  SourceBucket  | Il nome del bucket di origine.<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: un bucket di origine valido. |  Sì  | 
|  SourceKey  | Il nome chiave dell'oggetto sorgente.<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: la chiave per un oggetto sorgente valido a cui si dispone dell'accesso in LETTURA. |  Sì  | 
|  DestinationBucket  | Nome del bucket di destinazione.<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: è necessario disporre dell'accesso WRITE al bucket di destinazione. |  Sì  | 
|  DestinationKey  |  La chiave dell'oggetto di destinazione.<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: è necessario disporre dell'accesso WRITE al bucket di destinazione. |  Sì  | 
|  MetadataDirective  |  Specifica se i metadati vengono copiati dall'oggetto di origine o sostituiti con i metadati forniti nella richiesta.<br />Tipo: stringa<br />Predefinito: COPY<br />Valori validi: COPY \| REPLACE<br />Vincoli: valori diversi `COPY` o `REPLACE` genereranno un errore immediato. Non è possibile copiare un oggetto su se stesso a meno che l' MetadataDirective intestazione non sia specificata e il relativo valore impostato su. `REPLACE` |  No  | 
|  Metadata  |  Specifica le coppie nome-valore dei metadati da impostare per l'oggetto. Se MetadataDirective è impostato su, tutti i metadati vengono ignorati. `COPY`<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: nessuno. |  No  | 
|  AccessControlList  | Consente l'accesso agli utenti tramite indirizzi e-mail o ID utente canonico.<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: nessuno |  No  | 
|  CopySourceIfMatch  | Copia l'oggetto se il relativo tag di entità (ETag) corrisponde al tag specificato; altrimenti restituisce un. PreconditionFailed<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: nessuno. Se l'Etag non corrisponde, l'oggetto non viene copiato. |  No  | 
|  CopySourceIfNoneMatch  | Copia l'oggetto se il relativo tag di entità (ETag) è diverso dall'Etag specificato; altrimenti restituisce un errore.<br />Tipo: stringa<br />Impostazione predefinita: nessuna<br />Vincoli: nessuno.  |  No  | 
|  CopySourceIfUnmodifiedSince  |  Copia l'oggetto se non è stato modificato dall'ora specificata; altrimenti restituisce un PreconditionFailed.<br />Tipo: DateTime<br />Impostazione predefinita: nessuna |  No  | 
|  CopySourceIfModifiedSince  | Copia l'oggetto se è stato modificato dall'ora specificata; altrimenti restituisce un errore.<br />Tipo: DateTime<br />Impostazione predefinita: nessuna |  No  | 

## Sintassi della risposta
<a name="SOAPCopyObject_ResponseSyntax"></a>

```
1. <CopyObjectResponse xmlns="http://bucket_name.s3.amazonaws.com/2006-03-01">
2.   <CopyObjectResponse>
3.     <ETag>"etag"</ETag>
4.     <LastModified>timestamp</LastModified>
5.   </CopyObjectResponse>
6. </CopyObjectResponse>
```

## Elementi di risposta
<a name="SOAPCopyObject_CommonResponseElements"></a>

Di seguito è riportato un elenco di elementi di risposta.

**Nota**  
 L'API SOAP non restituisce spazi bianchi aggiuntivi. Gli spazi bianchi aggiuntivi vengono restituiti solo dall'API REST. 


|  Nome  |  Description  | 
| --- | --- | 
|  Etag  | Restituisce l'etag del nuovo oggetto. L'ETag riflette solo le modifiche al contenuto di un oggetto, non i suoi metadati.<br />Tipo: stringa<br />Antenato: CopyObjectResult | 
|  LastModified  | Restituisce la data dell'ultima modifica dell'oggetto.<br />Tipo: stringa<br />Antenato: CopyObjectResult | 

Per informazioni sugli elementi di risposta generali, vedere [ Utilizzo delle intestazioni ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/HandlingErrors.html#UsingRESTErrorResponseHeaders) di risposta agli errori REST.

## Errori speciali
<a name="SOAPCopyObject_SpecialErrors"></a>

Non ci sono errori speciali per questa operazione. Per informazioni sugli errori generali di Amazon S3, consulta[Elenco dei codici di errore](ErrorResponses.md#ErrorCodeList).

## Esempi
<a name="SOAPCopyObject_Examples"></a>

In questo esempio viene copiato l'oggetto `flotsam` dal bucket `pacific` all'oggetto `jetsam` del bucket `atlantic` conservandone i metadata.

### Richiesta di esempio
<a name="SOAPCopyObject_Examples_Request1"></a>

```
1. <CopyObject xmlns="http://doc.s3.amazonaws.com/2006-03-01">
2.   <SourceBucket>pacific</SourceBucket>
3.   <SourceObject>flotsam</SourceObject>
4.   <DestinationBucket>atlantic</DestinationBucket>
5.   <DestinationObject>jetsam</DestinationObject>
6.   <AWSAccessKeyId>AKIAIOSFODNN7EXAMPLE</AWSAccessKeyId>
7.   <Timestamp>2008-02-18T13:54:10.183Z</Timestamp>
8.   <Signature>Iuyz3d3P0aTou39dzbq7RrtSFmw=</Signature>
9. </CopyObject>
```

### Risposta di esempio
<a name="SOAPCopyObject_Examples_Response1"></a>

```
1. <CopyObjectResponse xmlns="http://doc.s3.amazonaws.com/2006-03-01">
2.   <CopyObjectResponse>
3.     <ETag>"828ef3fdfa96f00ad9f27c383fc9ac7f"</ETag>
4.     <LastModified>2008-02-18T13:54:10.183Z</LastModified>
5.   </CopyObjectResponse>
6. </CopyObjectResponse>
```

Questo esempio copia l'oggetto «tweedledee» dal bucket Wonderland all'oggetto «tweedledum» del bucket Wonderland, sostituendone i metadati.

### Richiesta di esempio
<a name="SOAPCopyObject_Examples_Request2"></a>

```
 1. <CopyObject xmlns="http://doc.s3.amazonaws.com/2006-03-01">
 2.   <SourceBucket>wonderland</SourceBucket>
 3.   <SourceObject>tweedledee</SourceObject>
 4.   <DestinationBucket>wonderland</DestinationBucket>
 5.   <DestinationObject>tweedledum</DestinationObject>
 6.   <MetadataDirective >REPLACE</MetadataDirective >
 7.   <Metadata>
 8.     <Name>Content-Type</Name>
 9.     <Value>text/plain</Value>
10.   </Metadata>
11.   <Metadata>
12.     <Name>relationship</Name>
13.     <Value>twins</Value>
14.   </Metadata>
15.   <AWSAccessKeyId>AKIAIOSFODNN7EXAMPLE</AWSAccessKeyId>
16.   <Timestamp>2008-02-18T13:54:10.183Z</Timestamp>
17.   <Signature>Iuyz3d3P0aTou39dzbq7RrtSFmw=</Signature>
18. </CopyObject>
```

### Risposta di esempio
<a name="SOAPCopyObject_Examples_Response2"></a>

```
1. <CopyObjectResponse xmlns="http://doc.s3.amazonaws.com/2006-03-01">
2.   <CopyObjectResponse>
3.     <ETag>"828ef3fdfa96f00ad9f27c383fc9ac7f"</ETag>
4.     <LastModified>2008-02-18T13:54:10.183Z</LastModified>
5.   </CopyObjectResponse>
6. </CopyObjectResponse>
```

## Risorse correlate
<a name="SOAPCopyObject_RelatedResources"></a>
+  [PutObject (API SOAP)](SOAPPutObject.md) 
+  [PutObjectInline (API SOAP)](SOAPPutObjectInline.md) 