

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

# Elementi della configurazione del ciclo di vita
<a name="intro-lifecycle-rules"></a>

Una configurazione del ciclo di vita S3 è formata da regole che includono diversi elementi che descrivono le azioni che Amazon S3 esegue durante l’intero ciclo di vita di un oggetto. A ogni bucket S3 può essere assegnata una configurazione del ciclo di vita, che può contenere fino a 1.000 regole. La configurazione del ciclo di vita di Amazon S3 viene specificata in formato XML e consiste in una o più regole del ciclo di vita, dove ogni regola è composta da uno o più elementi.

```
<LifecycleConfiguration>
    <Rule>
         <Element>
    </Rule>
    <Rule>
         <Element>
         <Element>
    </Rule>
</LifecycleConfiguration>
```

Ogni regola è costituita dagli elementi seguenti:
+ Metadati della regola tra cui l'ID, nonché uno stato che indica se la regola è abilitata o disabilitata. Se una regola è disabilitata, Amazon S3 non esegue le operazioni in essa specificate.
+ Filtro che identifica gli oggetti a cui si applica la regola. È possibile specificare un filtro utilizzando la dimensione dell'oggetto, il prefisso della chiave dell'oggetto, uno o più tag di oggetto oppure una combinazione di filtri.
+ Una o più operazioni di transizione o scadenza con una data o un periodo nel ciclo di vita dell'oggetto in cui si desidera che Amazon S3 esegua l'operazione specificata. 

**Topics**
+ [Elemento ID](#intro-lifecycle-rule-id)
+ [Elemento Status](#intro-lifecycle-rule-status)
+ [Elemento Filter](#intro-lifecycle-rules-filter)
+ [Elementi per la descrizione delle operazioni nel ciclo di vita](#intro-lifecycle-rules-actions)
+ [Aggiunta di filtri alle regole del ciclo di vita](intro-lifecycle-filters.md)

Le sezioni che seguono descrivono gli elementi XML contenuti in una configurazione del ciclo di vita S3. Per gli esempi di configurazione, consulta [Esempi di configurazioni del ciclo di vita S3](lifecycle-configuration-examples.md).

## Elemento ID
<a name="intro-lifecycle-rule-id"></a>

Le configurazioni del ciclo di vita sono definite a livello di bucket e ciascun bucket ha una propria configurazione specifica. Una configurazione del ciclo di vita S3 può contenere fino a 1.000 regole per bucket. Questo limite non è regolabile. L’elemento `<ID>` identifica in modo univoco una regola all’interno della configurazione del ciclo di vita di un bucket. La lunghezza dell'ID è limitata a 255 caratteri.

## Elemento Status
<a name="intro-lifecycle-rule-status"></a>

Il valore dell'elemento `<Status>` può essere `Enabled` o `Disabled`. Se una regola è disabilitata, Amazon S3 non esegue nessuna delle operazioni in essa definite.

## Elemento Filter
<a name="intro-lifecycle-rules-filter"></a>

Una regola del ciclo di vita S3 può essere valida per tutti gli oggetti di un bucket o solo per un sottoinsieme in base all'elemento `<Filter>` specificato nella regola. 

È possibile filtrare gli oggetti per prefisso della chiave, tag dell'oggetto o una combinazione di entrambi (in tal caso, Amazon S3 utilizza un operatore logico `AND` per combinare i filtri). Per ulteriori informazioni ed esempi sui filtri, consulta [Aggiunta di filtri alle regole del ciclo di vita](intro-lifecycle-filters.md).
+ **Definizione di un filtro tramite prefissi della chiave**: questo esempio illustra una regola del ciclo di vita S3 valida per un sottoinsieme di oggetti in base al prefisso del nome della chiave (`logs/`). Ad esempio, la regola del ciclo di vita è valida per gli oggetti `logs/mylog.txt`, `logs/temp1.txt` e `logs/test.txt`. ma non per l'oggetto `example.jpg`.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>logs/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
      ...
  </LifecycleConfiguration>
  ```

  Per applicare un'operazione per il ciclo di vita a un sottoinsieme di oggetti in base a diversi prefissi del nome della chiave, specificare regole separate e, all'interno di ognuna, specificare un filtro basato sul prefisso. Ad esempio, per descrivere un'operazione per il ciclo di vita per oggetti con prefissi della chiave `projectA/` e `projectB/`, vanno specificate due regole, come illustrato di seguito: 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>projectA/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  
      <Rule>
          <Filter>
             <Prefix>projectB/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  </LifecycleConfiguration>
  ```

  Per ulteriori informazioni sulle chiavi degli oggetti, consulta [Denominazione di oggetti Amazon S3](object-keys.md). 
+ **Definizione di un filtro in base ai tag dell'oggetto**: nell'esempio che segue la regola del ciclo di vita specifica un filtro basato su un tag (`key`) e un valore (`value`). La regola si applica quindi solo a un sottoinsieme di oggetti con quel tag specifico.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Tag>
                <Key>key</Key>
                <Value>value</Value>
             </Tag>
          </Filter>
          transition/expiration actions
          ...
      </Rule>
  </LifecycleConfiguration>
  ```

  È possibile specificare un filtro basato su più tag. È necessario racchiudere i tag nell'elemento `<And>` illustrato nell'esempio che segue. La regola indica ad Amazon S3 di eseguire le operazioni del ciclo di vita sugli oggetti con due tag (con la specifica combinazione di chiave e valore).

  ```
  <LifecycleConfiguration>
      <Rule>
        <Filter>
           <And>
              <Tag>
                 <Key>key1</Key>
                 <Value>value1</Value>
              </Tag>
              <Tag>
                 <Key>key2</Key>
                 <Value>value2</Value>
              </Tag>
               ...
            </And>
        </Filter>
        transition/expiration actions
      </Rule>
  </Lifecycle>
  ```

  La regola del ciclo di vita si applica agli oggetti che contengono entrambi i tag specificati. Amazon S3 esegue un'operazione logica `AND`. Tenere presente quanto segue:
  + Ogni tag deve corrispondere esattamente *sia* alla chiave che al valore. Se si specifica solo un elemento `<Key>` e nessun elemento `<Value>`, la regola verrà applicata solo agli oggetti che corrispondono alla chiave del tag e che *non* hanno un valore specificato.
  + La regola si applica a un sottoinsieme di oggetti che ha tutti i tag specificati nella regola. Se a un oggetto sono specificati tag aggiuntivi, la regola verrà comunque applicata.
**Nota**  
Quando si specificano più tag in un filtro, ogni chiave del tag deve essere univoca.
+ **Definizione di un filtro in base al prefisso e a uno o più tag**: in una regola del ciclo di vita è possibile specificare un filtro in base al prefisso della chiave e a uno o più tag. Anche in questo caso, è necessario racchiudere tutti gli elementi del filtro nell'elemento `<And>`, come illustrato di seguito.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
            <And>
               <Prefix>key-prefix</Prefix>
               <Tag>
                  <Key>key1</Key>
                  <Value>value1</Value>
               </Tag>
               <Tag>
                  <Key>key2</Key>
                  <Value>value2</Value>
               </Tag>
                ...
            </And>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

  Amazon S3 combina questi filtri tramite l'operatore logico `AND`. In altre parole, la regola si applica al sottoinsieme di oggetti con il prefisso della chiave e i tag specificati. Un filtro può avere un solo prefisso e zero o più tag.
+ È possibile specificare un **filtro vuoto**, nel qual caso la regola si applica a tutti gli oggetti nel bucket.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
+ Per filtrare una regola per **dimensione oggetto**, è possibile specificare una dimensione minima (`ObjectSizeGreaterThan`) o massima (`ObjectSizeLessThan`) oppure è possibile specificare un intervallo di dimensioni degli oggetti.

  I valori delle dimensioni degli oggetti sono espressi in byte. Per impostazione predefinita, gli oggetti di dimensioni inferiori a 128 KB non verranno trasferiti in nessuna classe di storage, a meno che non si specifichi una dimensione minima inferiore (`ObjectSizeGreaterThan`) o una dimensione massima (`ObjectSizeLessThan`). Per ulteriori informazioni, consulta [Esempio: Consentire la transizione di oggetti di dimensioni inferiori a 128 KB](lifecycle-configuration-examples.md#lc-small-objects).

  ```
                      <LifecycleConfiguration>
      <Rule>
          <Filter>
              <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>   
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
**Nota**  
I filtri `ObjectSizeGreaterThan` e `ObjectSizeLessThan` escludono i valori specificati. Ad esempio, se si imposta il passaggio degli oggetti di dimensioni comprese tra 128 KB e 1024 KB dalla classe di storage S3 Standard alla classe di storage AI S3 Standard, gli oggetti di dimensioni esattamente pari a 1024 KB e 128 KB non passeranno alla classe AI S3 Standard. La regola si applicherà invece solo agli oggetti con dimensioni superiori a 128 KB e inferiori a 1024 KB. 

  Se stai specificando un intervallo di dimensioni degli oggetti, il numero intero `ObjectSizeGreaterThan` deve essere minore del valore `ObjectSizeLessThan`. Quando si utilizzano più filtri, è necessario racchiudere i filtri in un elemento `<And>`. L'esempio seguente illustra come specificare gli oggetti in un intervallo compreso tra 500 e 64.000 byte. 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
              <And>
                  <Prefix>key-prefix</Prefix>
                  <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>
                  <ObjectSizeLessThan>64000</ObjectSizeLessThan>
              </And>    
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

## Elementi per la descrizione delle operazioni nel ciclo di vita
<a name="intro-lifecycle-rules-actions"></a>

È possibile indicare ad Amazon S3 di eseguire operazioni specifiche nel ciclo di vita di un oggetto specificando in una regola del ciclo di vita S3 una o più delle seguenti operazioni predefinite, il cui effetto dipende dallo stato della funzione Controllo delle versioni del bucket. 
+ **Elemento dell'operazione `Transition`**: l'operazione `Transition` viene impostata per trasferire gli oggetti da una classe di storage a un'altra. Per ulteriori informazioni sul trasferimento degli oggetti, consulta [Transizioni supportate](lifecycle-transition-general-considerations.md#lifecycle-general-considerations-transition-sc). Al raggiungimento di una data o di un periodo nel ciclo di vita dell'oggetto, Amazon S3 esegue la transizione. 

  Per un bucket con versione (bucket con funzione Controllo delle versioni attivata o sospesa), l'operazione `Transition` si applica alla versione corrente dell'oggetto. Per la gestione delle versioni non correnti, Amazon S3 definisce l'operazione `NoncurrentVersionTransition` (descritta di seguito in questo argomento).
+ **Elemento dell'operazione `Expiration`**: l'operazione `Expiration` definisce la scadenza degli oggetti identificati nella regola e viene applicata agli oggetti idonei in qualsiasi classe di storage di Amazon S3. Per ulteriori informazioni sulle classi di storage, consulta [Comprensione e gestione delle classi di storage Amazon S3](storage-class-intro.md). Amazon S3 rende non disponibili tutti gli oggetti scaduti. L'eventuale rimozione permanente degli oggetti dipende dallo stato della funzione Controllo delle versioni del bucket. 
  + **Bucket senza versione**: l'operazione `Expiration` comporta la rimozione permanente dell'oggetto da parte di Amazon S3. 
  + **Bucket con versione** – Per un bucket con versione (ovvero, con funzione Controllo delle versioni attivata o sospesa), sono diversi i fattori che governano la gestione dell'operazione `Expiration` da parte di Amazon S3. Per i bucket con controllo delle versioni abilitata o sospesa, vale quanto segue:
    + L'operazione `Expiration` si applica solo alla versione corrente (non ha effetto sulle versioni non correnti dell'oggetto).
    + Amazon S3 non esegue alcuna operazione se sono presenti una o più versioni dell'oggetto e il contrassegno di eliminazione è la versione corrente.
    + Se la versione corrente dell'oggetto è l'unica disponibile e porta anche il contrassegno di eliminazione (noto anche come *contrassegno di eliminazione dell'oggetto scaduto*, dove tutte le versioni degli oggetti vengono eliminate e rimane solo un contrassegno di eliminazione), Amazon S3 rimuove il contrassegno di eliminazione dall'oggetto scaduto. È possibile inoltre utilizzare l'operazione di eliminazione per indicare ad Amazon S3 di rimuovere i contrassegni di eliminazione dell'oggetto scaduto. Per un esempio, consulta [Rimozione dei contrassegni di eliminazione degli oggetti scaduti in un bucket con il controllo delle versioni abilitato](lifecycle-configuration-examples.md#lifecycle-config-conceptual-ex7). 

    Per ulteriori informazioni, consulta [Conservazione di più versioni degli oggetti con Controllo delle versioni S3](Versioning.md).

    Considera inoltre quanto segue durante la configurazione di Amazon S3 per la gestione delle scadenze:
    + **Bucket con funzione Controllo delle versioni abilitata** 

      Se la versione dell'oggetto corrente non è un contrassegno di eliminazione, Amazon S3 aggiunge un contrassegno di eliminazione con un ID versione univoco. La versione corrente diventa quindi non corrente e il contrassegno di eliminazione diventa la versione corrente. 
    + **Bucket con funzione Controllo delle versioni sospesa** 

      Per un bucket con funzione Controllo delle versioni sospesa, l'operazione di scadenza comporta la creazione da parte di Amazon S3 di un contrassegno di eliminazione il cui ID versione sarà `null`. Il contrassegno di eliminazione sostituisce qualsiasi versione dell'oggetto con ID versione null nella gerarchia delle versioni: questa operazione elimina di fatto l'oggetto. 

Inoltre, in Amazon S3 sono disponibili le seguenti operazioni, utili per gestire le versioni non correnti degli oggetti in un bucket con versione (ovvero, con funzione Controllo delle versioni attivata o sospesa).
+ **Elemento dell'operazione `NoncurrentVersionTransition`**: utilizzare questa operazione per specificare quando Amazon S3 effettua il trasferimento degli oggetti alla classe di storage specificata. È possibile basare questa transizione su un determinato numero di giorni da quando gli oggetti sono diventati non correnti (`<NoncurrentDays>`). Oltre al numero di giorni, puoi anche specificare il numero di versioni non correnti (`<NewerNoncurrentVersions>`) da conservare (tra 1 e 100). Questo valore determina quante versioni non correnti più recenti devono esistere prima che Amazon S3 possa effettuare la transizione di una determinata versione. Amazon S3 trasferirà eventuali versioni aggiuntive non correnti oltre il numero specificato da conservare. Affinché la transizione avvenga, i valori `<NoncurrentDays>` **e** `<NewerNoncurrentVersions>` devono essere entrambi superati.

  Per specificare il numero di versioni non correnti da mantenere, devi anche fornire un elemento `<Filter>`. Se non specifichi un elemento `<Filter>`, Amazon S3 genera un errore `InvalidRequest` quando indichi il numero di versioni non correnti da mantenere.

  Per ulteriori informazioni sul trasferimento degli oggetti, consulta [Transizioni supportate](lifecycle-transition-general-considerations.md#lifecycle-general-considerations-transition-sc). Per informazioni dettagliate su come Amazon S3 calcola la data quando si specifica il numero di giorni nell'operazione `NoncurrentVersionTransition`, consulta [Regole del ciclo di vita basate sull'età di un oggetto](#intro-lifecycle-rules-number-of-days).
+ **Elemento dell'operazione `NoncurrentVersionExpiration`**: utilizzare questa operazione per indicare ad Amazon S3 di eliminare definitivamente le versioni non correnti degli oggetti. Gli oggetti eliminati non possono essere ripristinati. È possibile basare questa scadenza su un determinato numero di giorni da quando gli oggetti sono diventati non correnti (`<NoncurrentDays>`). Oltre al numero di giorni, puoi anche specificare il numero di versioni non correnti (`<NewerNoncurrentVersions>`) da conservare (tra 1 e 100). Questo valore specifica quante versioni non correnti più recenti devono esistere prima che Amazon S3 possa far scadere una determinata versione. Amazon S3 eliminerà definitivamente tutte le versioni non correnti aggiuntive oltre al numero specificato da conservare. Affinché l’eliminazione avvenga, i valori `<NoncurrentDays>` **e** `<NewerNoncurrentVersions>` devono essere entrambi superati.

  Per specificare il numero di versioni non correnti da mantenere, devi anche fornire un elemento `<Filter>`. Se non specifichi un elemento `<Filter>`, Amazon S3 genera un errore `InvalidRequest` quando indichi il numero di versioni non correnti da mantenere.

  Il ritardo nella rimozione degli oggetti non correnti può rivelarsi utile per correggere eventuali eliminazioni o sovrascritture accidentali. Ad esempio, è possibile configurare una regola di scadenza perché elimini le versioni cinque giorni dopo essere diventate non correnti. Si supponga ad esempio di aver creato, in data 1/1/2014 alle ore 10:30 UTC, un oggetto denominato `photo.gif` (ID versione 111111). Il 2/1/2014 alle ore 11:30 UTC, l'oggetto `photo.gif` (ID versione 111111) viene eliminato accidentalmente; viene quindi creato un contrassegno di eliminazione con un nuovo ID versione (ad esempio, l'ID versione 4857693). A questo punto, si hanno cinque giorni per recuperare la versione originale di `photo.gif` (ID versione 111111) prima che l'eliminazione diventi definitiva. L'8/1/2014 alle 00:00 UTC, viene eseguita la regola del ciclo di vita per la scadenza, che elimina definitivamente l'oggetto `photo.gif` (ID versione 111111), cinque giorni dopo il passaggio a versione non corrente. 

  Per informazioni dettagliate su come Amazon S3 calcola la data quando si specifica il numero di giorni in un'operazione `NoncurrentVersionExpiration`, consulta [Regole del ciclo di vita basate sull'età di un oggetto](#intro-lifecycle-rules-number-of-days).
**Nota**  
Le configurazioni del ciclo di vita per la scadenza degli oggetti non rimuovono i caricamenti incompleti in più parti. Per eseguire questa operazione, è necessario utilizzare l'operazione di configurazione del ciclo di vita `AbortIncompleteMultipartUpload` descritta più avanti in questa sezione. 

Oltre alle operazioni di transizione e scadenza, è possibile utilizzare le seguenti operazioni di configurazione del ciclo di vita per indicare ad Amazon S3 di interrompere i caricamenti in più parti incompleti o di rimuovere i contrassegni di eliminazione degli oggetti scaduti. 
+ **Elemento dell'operazione `AbortIncompleteMultipartUpload`**: questo elemento serve a impostare il tempo massimo (in giorni) in cui consentire l'esecuzione dei caricamenti in più parti. Se i caricamenti in più parti applicabili (identificati dal nome della chiave `prefix` specificato nella regola del ciclo di vita) non vengono completati nel periodo di tempo predefinito, Amazon S3 interrompe i caricamenti in più parti incompleti. Per ulteriori informazioni, consulta [Interruzione di un caricamento in più parti](abort-mpu.md). 
**Nota**  
Non è possibile specificare questa operazione del ciclo di vita in una regola che ha un filtro che utilizza tag di oggetti. 
+ **Elemento dell'operazione `ExpiredObjectDeleteMarker`**: in un bucket con la funzione Controllo delle versioni attivata un contrassegno di eliminazione con zero versioni non correnti è definito *contrassegno di eliminazione dell'oggetto scaduto*. È possibile utilizzare questa operazione del ciclo di vita per indicare ad Amazon S3 di rimuovere i contrassegni di eliminazione degli oggetti scaduti. Per vedere un esempio, consulta [Rimozione dei contrassegni di eliminazione degli oggetti scaduti in un bucket con il controllo delle versioni abilitato](lifecycle-configuration-examples.md#lifecycle-config-conceptual-ex7).
**Nota**  
Non è possibile specificare questa operazione del ciclo di vita in una regola che ha un filtro che utilizza tag di oggetti.

### Modalità con cui Amazon S3 calcola da quanto tempo un oggetto è non corrente
<a name="non-current-days-calculations"></a>

In un bucket abilitato al controllo delle versioni, possono essere incluse più versioni di un oggetto. Esiste sempre una versione corrente e zero o più versioni non correnti. Ogni volta che si carica un oggetto, la versione appena aggiunta diventa la versione corrente e quella che lo era in precedenza viene mantenuta come versione non corrente. Per stabilire da quanti giorni è non corrente un oggetto, Amazon S3 considera la data di creazione della versione successiva. Il numero di giorni dalla data di creazione della versione successiva viene utilizzato da Amazon S3 come numero di giorni da cui l'oggetto è non corrente.

**Ripristino delle versioni precedenti di un oggetto con l'uso delle configurazioni del ciclo di vita di S3**  
Come spiegato in [Ripristino di versioni precedenti](RestoringPreviousVersions.md), è possibile utilizzare uno dei due metodi seguenti per recuperare le versioni precedenti di un oggetto:  
**Metodo 1: Copiare una versione non corrente dell'oggetto nello stesso bucket.** La copia diventa la versione corrente dell'oggetto e vengono conservate tutte le sue versioni.
**Metodo 2: Eliminare definitivamente la versione corrente dell'oggetto.** Così facendo, in effetti, la versione prima non corrente diventa la versione corrente dell'oggetto. 
Quando si utilizzano le regole di configurazione del ciclo di vita S3 per bucket con funzione Controllo delle versioni abilitata, il Metodo 1 rappresenta la best practice consigliata.   
Il ciclo di vita di S3 opera in base a un modello consistente finale. Una versione corrente eliminata definitivamente potrebbe non scomparire finché le modifiche non si propagano a tutti i sistemi Amazon S3. Pertanto, Amazon S3 potrebbe non essere temporaneamente a conoscenza di questa eliminazione. Nel frattempo. la regola del ciclo di vita configurata per la scadenza degli oggetti non correnti potrebbe rimuovere definitivamente tali oggetti, compreso quello da ripristinare. Ne consegue che l'opzione più sicura è la copia della vecchia versione, come consigliato nel Metodo 1.

### Operazioni del ciclo di vita e stato della funzione Controllo delle versioni nel bucket
<a name="lifecycle-actions-bucket-versioning-state"></a>

Nella tabella seguente è riassunto il comportamento delle operazioni incluse nelle regole di configurazione del ciclo di vita S3 in relazione allo stato della funzione Controllo delle versioni del bucket che contiene l'oggetto.


| Azione | Bucket senza versione (funzione Controllo delle versioni non abilitata) | Bucket con funzione Controllo delle versioni abilitata | Bucket con funzione Controllo delle versioni sospesa | 
| --- | --- | --- | --- | 
|  `Transition` Al raggiungimento di una data o di un periodo nel ciclo di vita dell'oggetto.  | Amazon S3 trasferisce l'oggetto nella classe di storage specificata. | Amazon S3 trasferisce la versione corrente dell'oggetto nella classe di storage specificata. | Stesso comportamento del bucket con funzione Controllo delle versioni abilitata. | 
|  `Expiration` Al raggiungimento di una data o di un periodo nel ciclo di vita dell'oggetto.  | L'operazione Expiration elimina l'oggetto e l'oggetto eliminato non può essere ripristinato. | Se la versione corrente non è un contrassegno di eliminazione, Amazon S3 crea un contrassegno di eliminazione, che diventa la versione corrente, mentre la versione corrente esistente viene mantenuta come versione non corrente. | L'operazione del ciclo di vita crea un contrassegno di eliminazione con ID versione null, che diventa la versione corrente. Se la versione corrente dell'oggetto ha come ID null, l'operazione Expiration elimina definitivamente la versione. Altrimenti, la versione corrente viene mantenuta come versione non corrente. | 
|  `NoncurrentVersionTransition` Per le versioni non correnti in un bucket con controllo delle versioni abilitato o sospeso, S3 Lifecycle effettua la transizione di un oggetto quando il numero di giorni trascorsi da quando l’oggetto è diventato non corrente supera sia il valore specificato in **Numero di giorni dopo il quale gli oggetti diventano non correnti** (`<NoncurrentDays>`) nella regola sia quando il numero di versioni supera il valore specificato in **Numero di versioni più recenti da mantenere** (`<NewerNoncurrentVersions>`) nella regola stessa.  | NoncurrentVersionTransition non ha effetto. |  Amazon S3 trasferisce le versioni non correnti dell'oggetto nella classe di storage specificata.  | Stesso comportamento del bucket con funzione Versioni multiple abilitata. | 
|  `NoncurrentVersionExpiration` Per le versioni non correnti in un bucket con controllo delle versioni abilitato o sospeso, S3 Lifecycle fa scadere un oggetto quando il numero di giorni trascorsi da quando l’oggetto è diventato non corrente supera sia il valore specificato in **Numero di giorni dopo il quale gli oggetti diventano non correnti** (`<NoncurrentDays>`) nella regola sia quando il numero di versioni supera il valore specificato in **Numero di versioni più recenti da mantenere** (`<NewerNoncurrentVersions>`) nella regola stessa.  | NoncurrentVersionExpiration non ha effetto. | L'operazione NoncurrentVersionExpiration elimina definitivamente la versione non corrente dell'oggetto e l'oggetto eliminato non può essere ripristinato. | Stesso comportamento del bucket con funzione Controllo delle versioni abilitata. | 

### Regole del ciclo di vita basate sull'età di un oggetto
<a name="intro-lifecycle-rules-number-of-days"></a>

È possibile specificare un periodo di tempo (in numero di giorni) che deve trascorrere dalla creazione (o modifica) dell'oggetto prima che Amazon S3 possa eseguire l'operazione specificata. 

Quando si specifica il numero di giorni nelle operazioni `Transition` ed `Expiration` in una configurazione del ciclo di vita S3, tenere presente quanto segue:
+ Il valore specificato è il numero di giorni dalla creazione dell'oggetto in cui si verificherà l'operazione.
+ Amazon S3 calcola l’ora aggiungendo il numero di giorni specificato nella regola all’ora di creazione dell’oggetto e arrotondando l’ora che ne risulta alla mezzanotte UTC del giorno successivo. Ad esempio, se un oggetto è stato creato il 15/1/2014 alle ore 10:30 UTC e il numero di giorni specificato in una regola di transizione è pari a 3, la data calcolata per la transizione dell'oggetto sarà il 19/1/2014 alle ore 00:00 UTC. 

**Nota**  
Amazon S3 gestisce solo l'ultima data di modifica per ciascun oggetto. Ad esempio, la console Amazon S3 mostra la data **Ultima modifica** nel riquadro **Proprietà** dell'oggetto. Quando si crea un nuovo oggetto, questo valore corrisponderà alla data di creazione. Se l'oggetto viene sostituito, la data cambia di conseguenza. Pertanto, la data di creazione è sinonimo della data **Ultima modifica**. 

Quando si specifica il numero di giorni nelle operazioni `NoncurrentVersionTransition` e `NoncurrentVersionExpiration` in una configurazione del ciclo di vita, tenere presente quanto segue:
+ Il valore specificato è il numero di giorni a partire dal momento in cui la versione dell'oggetto diventa non corrente (ovvero, dalla sovrascrittura o eliminazione dell'oggetto), quando Amazon S3 eseguirà l'operazione sugli oggetti specificati.
+ Amazon S3 calcola l’ora aggiungendo il numero di giorni specificato nella regola all’ora in cui la nuova versione successiva dell’oggetto viene creata e arrotondando l’ora che ne risulta alla mezzanotte UTC del giorno successivo. Ad esempio, nel bucket si ha una versione corrente di un oggetto, creata in data 1/1/2014 alle ore 10:30 UTC. Se la nuova versione dell'oggetto che sostituisce la versione corrente è stata creata in data 15/01/2014 alle 10:30 UTC e si specifica 3 giorni in una regola di transizione, la data calcolata per la transizione dell'oggetto sarà 19/01/2014 alle ore 00:00 UTC. 

### Regole del ciclo di vita basate su una data specifica
<a name="intro-lifecycle-rules-date"></a>

Quando si specifica un'operazione in una regola del ciclo di vita S3, è possibile specificare la data in cui si desidera che Amazon S3 esegua l'operazione. Alla data specificata, Amazon S3 applica l'operazione a tutti gli oggetti idonei (in base ai criteri di filtro). 

Se si specifica un'operazione del ciclo di vita S3 per una data già trascorsa, tutti gli oggetti idonei sono immediatamente qualificati per tale operazione.

**Importante**  
Le operazioni basate su data non sono valide una tantum. Se lo stato della regola è , Amazon S3 continua ad applicare l'operazione basata su data anche dopo che questa è trascors `Enabled`.  
Si supponga ad esempio di specificare un'operazione `Expiration` basata su data per l'eliminazione di tutti gli oggetti (assumendo che nella regola non siano specificati filtri). Nella data specificata, Amazon S3 applica la scadenza a tutti gli oggetti nel bucket. Amazon S3 continua inoltre ad applicare la scadenza a tutti i nuovi oggetti creati nel bucket. Per interrompere l'operazione, è necessario rimuoverla dalla regola del ciclo di vita, disabilitare la regola o eliminare la regola dalla configurazione del ciclo di vita.

Il valore della data deve essere conforme allo standard ISO 8601. L'ora è sempre la mezzanotte UTC. 

**Nota**  
Non è possibile creare le regole del ciclo di vita basate su data nella console Amazon S3, ma è possibile visualizzarle, disabilitarle o eliminarle. 

# Aggiunta di filtri alle regole del ciclo di vita
<a name="intro-lifecycle-filters"></a>

I filtri sono un elemento opzionale delle regole del ciclo di vita che è possibile utilizzare per specificare gli oggetti a cui si applica la regola.

Per filtrare gli oggetti possono essere utilizzati i seguenti elementi:

**Prefisso della chiave**  
È possibile filtrare gli oggetti in base a un prefisso. Se desideri applicare un’azione del ciclo di vita a un sottoinsieme di oggetti con prefissi diversi, crea regole separate per ciascuna azione.

**Tag dell'oggetto**  
È possibile filtrare gli oggetti in base a uno o più tag. Ogni tag deve corrispondere esattamente sia alla chiave che al valore e, se si specificano più tag, ogni chiave del tag deve essere univoca. Un filtro con più tag dell'oggetto si applica a un sottoinsieme di oggetti con tutti i tag specificati. Se per un oggetto sono specificati tag aggiuntivi, il filtro verrà comunque applicato.  
Se si specifica solo un elemento `Key` e nessun elemento `Value`, la regola verrà applicata solo agli oggetti che corrispondono alla chiave del tag e che non hanno un valore specificato.

**Dimensione minima o massima dell'oggetto**  
È possibile filtrare gli oggetti in base alla dimensione. È possibile specificare una dimensione minima (`ObjectSizeGreaterThan`) o una dimensione massima (`ObjectSizeLessThan`) oppure è possibile specificare un intervallo di dimensioni dell'oggetto nello stesso filtro. I valori delle dimensioni degli oggetti sono espressi in byte. La dimensione massima del filtro è di 50 TB. Amazon S3 applica una dimensione minima dell'oggetto predefinita alla configurazione del ciclo di vita. Per ulteriori informazioni, consulta [Esempio: Consentire la transizione di oggetti di dimensioni inferiori a 128 KB](lifecycle-configuration-examples.md#lc-small-objects).

È possibile combinare diversi elementi di filtro, nel qual caso Amazon S3 utilizza un operatore `AND` logico.

## Esempi di filtri
<a name="filter-examples"></a>

Di seguito sono riportati esempi che mostrano come è possibile utilizzare diversi elementi di filtro:
+ **Definizione di un filtro tramite prefissi della chiave**: questo esempio illustra una regola del ciclo di vita S3 valida per un sottoinsieme di oggetti in base al prefisso del nome della chiave (`logs/`). Ad esempio, la regola del ciclo di vita è valida per gli oggetti `logs/mylog.txt`, `logs/temp1.txt` e `logs/test.txt`. ma non per l'oggetto `example.jpg`.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>logs/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
      ...
  </LifecycleConfiguration>
  ```
**Nota**  
 Se si hanno uno o più prefissi che iniziano con gli stessi caratteri, è possibile includere tutti questi prefissi nella regola specificando un prefisso parziale senza barra finale (`/`) nel filtro. Ad esempio, supponiamo di avere i seguenti prefissi:  

  ```
  sales1999/
                  sales2000/
                  sales2001/
  ```
Per includere tutti e tre i prefissi nella regola, specificare `sales` come prefisso nella regola del ciclo di vita.

  Per applicare un'operazione per il ciclo di vita a un sottoinsieme di oggetti in base a diversi prefissi del nome della chiave, specificare regole separate e, all'interno di ognuna, specificare un filtro basato sul prefisso. Ad esempio, per descrivere un'operazione per il ciclo di vita per oggetti con prefissi della chiave `projectA/` e `projectB/`, vanno specificate due regole, come illustrato di seguito: 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>projectA/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  
      <Rule>
          <Filter>
             <Prefix>projectB/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  </LifecycleConfiguration>
  ```

  Per ulteriori informazioni sulle chiavi degli oggetti, consulta [Denominazione di oggetti Amazon S3](object-keys.md). 
+ **Definizione di un filtro in base ai tag dell'oggetto**: nell'esempio che segue la regola del ciclo di vita specifica un filtro basato su un tag (`key`) e un valore (`value`). La regola si applica quindi solo a un sottoinsieme di oggetti con quel tag specifico.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Tag>
                <Key>key</Key>
                <Value>value</Value>
             </Tag>
          </Filter>
          transition/expiration actions
          ...
      </Rule>
  </LifecycleConfiguration>
  ```

  È possibile specificare un filtro basato su più tag. È necessario racchiudere i tag nell'elemento `<And>` illustrato nell'esempio che segue. La regola indica ad Amazon S3 di eseguire le operazioni del ciclo di vita sugli oggetti con due tag (con la specifica combinazione di chiave e valore).

  ```
  <LifecycleConfiguration>
      <Rule>
        <Filter>
           <And>
              <Tag>
                 <Key>key1</Key>
                 <Value>value1</Value>
              </Tag>
              <Tag>
                 <Key>key2</Key>
                 <Value>value2</Value>
              </Tag>
               ...
            </And>
        </Filter>
        transition/expiration actions
      </Rule>
  </Lifecycle>
  ```

  La regola del ciclo di vita si applica agli oggetti che contengono entrambi i tag specificati. Amazon S3 esegue un'operazione logica `AND`. Tenere presente quanto segue:
  + Ogni tag deve corrispondere esattamente *sia* alla chiave che al valore. Se si specifica solo un elemento `<Key>` e nessun elemento `<Value>`, la regola verrà applicata solo agli oggetti che corrispondono alla chiave del tag e che *non* hanno un valore specificato.
  + La regola si applica a un sottoinsieme di oggetti che ha tutti i tag specificati nella regola. Se a un oggetto sono specificati tag aggiuntivi, la regola verrà comunque applicata.
**Nota**  
Quando si specificano più tag in un filtro, ogni chiave del tag deve essere univoca.
+ **Definizione di un filtro in base al prefisso e a uno o più tag**: in una regola del ciclo di vita è possibile specificare un filtro in base al prefisso della chiave e a uno o più tag. Anche in questo caso, è necessario racchiudere tutti gli elementi del filtro nell'elemento `<And>`, come illustrato di seguito.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
            <And>
               <Prefix>key-prefix</Prefix>
               <Tag>
                  <Key>key1</Key>
                  <Value>value1</Value>
               </Tag>
               <Tag>
                  <Key>key2</Key>
                  <Value>value2</Value>
               </Tag>
                ...
            </And>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

  Amazon S3 combina questi filtri tramite l'operatore logico `AND`. In altre parole, la regola si applica al sottoinsieme di oggetti con il prefisso della chiave e i tag specificati. Un filtro può avere un solo prefisso e zero o più tag.
+ **Definizione di un filtro vuoto**: è possibile specificare un filtro vuoto, nel qual caso la regola si applica a tutti gli oggetti nel bucket.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
+ **Definizione di un filtro per le dimensioni degli oggetti**: per filtrare una regola per dimensione oggetto, è possibile specificare una dimensione minima (`ObjectSizeGreaterThan`) o massima (`ObjectSizeLessThan`) oppure è possibile specificare un intervallo di dimensioni degli oggetti.

  I valori delle dimensioni degli oggetti sono espressi in byte. La dimensione massima del filtro è di 50 TB. Alcune classi di storage presentano limitazioni relative alle dimensioni minime degli oggetti. Per ulteriori informazioni, consulta [Confronto delle classi di storage di Amazon S3](storage-class-intro.md#sc-compare).

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
              <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>   
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
**Nota**  
I filtri `ObjectSizeGreaterThan` e `ObjectSizeLessThan` escludono i valori specificati. Ad esempio, se si imposta il passaggio degli oggetti di dimensioni comprese tra 128 KB e 1024 KB dalla classe di storage S3 Standard alla classe di storage AI S3 Standard, gli oggetti di dimensioni esattamente pari a 1024 KB e 128 KB non passeranno alla classe AI S3 Standard. La regola si applicherà invece solo agli oggetti con dimensioni superiori a 128 KB e inferiori a 1024 KB. 

  Se stai specificando un intervallo di dimensioni degli oggetti, il numero intero `ObjectSizeGreaterThan` deve essere minore del valore `ObjectSizeLessThan`. Quando si utilizzano più filtri, è necessario racchiudere i filtri in un elemento `<And>`. L'esempio seguente illustra come specificare gli oggetti in un intervallo compreso tra 500 e 64.000 byte. 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
              <And>
                  <Prefix>key-prefix</Prefix>
                  <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>
                  <ObjectSizeLessThan>64000</ObjectSizeLessThan>
              </And>    
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```