Questa pagina descrive come attivare, disattivare e controllare lo stato del controllo delle versioni degli oggetti in un bucket. Consulta Utilizzo di oggetti con controllo delle versioni per scoprire come elencare, ripristinare ed eliminare gli oggetti conservati dal controllo delle versioni degli oggetti.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per impostare e gestire il controllo delle versioni degli oggetti
in un bucket, chiedi all'amministratore di concederti il ruolo IAM Amministratore Storage
(roles/storage.admin
) nel bucket o nel progetto
che contiene il bucket. Questo ruolo predefinito contiene le autorizzazioni
necessarie per impostare e gestire il controllo delle versioni degli oggetti per un bucket. Per vedere quali sono esattamente le autorizzazioni
richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
storage.buckets.get
storage.buckets.update
storage.buckets.list
- Questa autorizzazione è necessaria solo se prevedi di utilizzare la consoleGoogle Cloud per eseguire le istruzioni riportate in questa pagina.
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati.
Per informazioni sulla concessione dei ruoli sui bucket, consulta Utilizzare IAM con i bucket. Per informazioni sulla concessione dei ruoli nei progetti, consulta Gestire l'accesso ai progetti.
Impostare il controllo delle versioni degli oggetti su un bucket
Console
- Nella console Google Cloud , vai alla pagina Bucket in Cloud Storage.
Nell'elenco dei bucket, fai clic sul nome del bucket per cui vuoi attivare o disattivare il controllo delle versioni degli oggetti.
Seleziona la scheda Protezione nella parte superiore della pagina.
Lo stato attuale del controllo delle versioni degli oggetti si trova nella sezione Controllo delle versioni degli oggetti.
Nella sezione Controllo delle versioni degli oggetti, fai clic sullo stato attuale per apportare modifiche.
Viene visualizzata la finestra di dialogo Controllo delle versioni degli oggetti.
- Se attivi il controllo delle versioni degli oggetti e vuoi ridurre al minimo i costi di archiviazione, seleziona la casella di controllo Aggiungi regole del ciclo di vita consigliate per gestire i costi delle versioni.
Fai clic su Conferma.
Riga di comando
Utilizza il comando gcloud storage buckets update
con il flag appropriato:
gcloud storage buckets update gs://BUCKET_NAME FLAG
Dove:
BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.FLAG
è--versioning
per attivare il controllo delle versioni degli oggetti o--no-versioning
per disattivarlo.
Se l'operazione ha esito positivo, la risposta è simile al seguente esempio:
Updating gs://my-bucket/... Completed 1
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
PHP
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio abilita il controllo delle versioni degli oggetti su un bucket:
Il seguente esempio disattiva il controllo delle versioni degli oggetti in un bucket:
API REST
API JSON
Avere la gcloud CLI installata e inizializzata, che ti consente di generare un token di accesso per l'intestazione
Authorization
.Crea un file JSON contenente le seguenti informazioni:
{ "versioning": { "enabled": STATE } }
Dove STATE è
true
ofalse
.Utilizza
cURL
per chiamare l'API JSON con una richiestaPATCH
Bucket:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=versioning"
Dove:
JSON_FILE_NAME
è il percorso del file JSON che hai creato nel passaggio 2.BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.
API XML
Avere la gcloud CLI installata e inizializzata, che ti consente di generare un token di accesso per l'intestazione
Authorization
.Crea un file XML che contenga le seguenti informazioni:
<VersioningConfiguration> <Status>STATE</Status> </VersioningConfiguration>
Dove STATE è
Enabled
oSuspended
.Utilizza
cURL
per chiamare l'API XML, con una richiestaPUT
Bucket e il parametro della stringa di queryversioning
:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?versioning"
Dove:
XML_FILE_NAME
è il percorso del file XML che hai creato nel passaggio 2.BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.
Una volta abilitato il controllo delle versioni degli oggetti, ogni volta che una versione dell'oggetto live viene sostituita o eliminata, questa versione diventa una versione non corrente.
Controllare se il controllo delle versioni degli oggetti è attivato
Per verificare se il controllo delle versioni degli oggetti è abilitato su un bucket:
Console
- Nella console Google Cloud , vai alla pagina Bucket in Cloud Storage.
Nell'elenco dei bucket, lo stato del controllo delle versioni degli oggetti di ciascun bucket si trova nella colonna Protezione.
Se questa opzione è abilitata, viene visualizzato il testo Controllo delle versioni degli oggetti.
Riga di comando
Utilizza il comando gcloud storage buckets describe
con il flag
--format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(versioning_enabled)"
Dove BUCKET_NAME
è il nome del bucket
di cui vuoi visualizzare lo stato. Ad esempio, my-bucket
.
Se l'operazione ha esito positivo e il controllo delle versioni degli oggetti è attivato, la risposta è simile al seguente esempio:
versioning: enabled: true
Se l'operazione ha esito positivo e il controllo delle versioni degli oggetti non è abilitato, la risposta è simile all'esempio seguente:
null
API REST
API JSON
Avere la gcloud CLI installata e inizializzata, che ti consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con una richiestaGET
Bucket:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=versioning"
Dove
BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.
Se l'operazione ha esito positivo e il controllo delle versioni degli oggetti è attivato, la risposta è simile al seguente esempio:
{ "versioning": { "enabled": true } }
Se l'operazione ha esito positivo e il controllo delle versioni degli oggetti non è abilitato, la risposta è simile all'esempio seguente:
{}
API XML
Avere la gcloud CLI installata e inizializzata, che ti consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API XML, con una richiestaGET
Bucket e il parametro della stringa di queryversioning
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?versioning"
Dove
BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.
Se l'operazione ha esito positivo e il controllo delle versioni degli oggetti è attivato, la risposta è simile al seguente esempio:
<VersioningConfiguration>
<Status>Enabled</Status>
</VersioningConfiguration>
Se l'operazione ha esito positivo e il controllo delle versioni degli oggetti non è abilitato, la risposta è simile all'esempio seguente:
<VersioningConfiguration/>
Passaggi successivi
- Scopri di più sul controllo delle versioni degli oggetti.
- Scopri come utilizzare gli oggetti non correnti.
- Scopri come utilizzare la gestione del ciclo di vita degli oggetti per gestire automaticamente le versioni degli oggetti.
- Scopri come utilizzare le precondizioni delle richieste per evitare le race condition.