Create a Cloud Storage bucket

Controlla i miei progressi

/ 20

Make file publicly readable

Controlla i miei progressi

/ 20

Customer-supplied encryption keys (CSEK)

Controlla i miei progressi

/ 20

Enable lifecycle management

Controlla i miei progressi

/ 20

Enable versioning

Controlla i miei progressi

/ 20

Questo lab potrebbe incorporare strumenti di AI a supporto del tuo apprendimento.

Panoramica

Cloud Storage è una risorsa fondamentale in Google Cloud, con numerose funzionalità avanzate. In questo lab proverai molte funzionalità di Cloud Storage che potrebbero esserti utili nelle tue progettazioni. Puoi interagire con Cloud Storage tramite la console Google Cloud, lo strumento a riga di comando gsutil o le librerie client di Cloud Storage per vari linguaggi di programmazione.

Obiettivi

In questo lab imparerai a:

  • Creare e utilizzare bucket Cloud Storage
  • Impostare elenchi di controllo dell'accesso per limitare l'accesso
  • Usare le tue chiavi di crittografia
  • Implementare controlli delle versioni
  • Usare la sincronizzazione directory

Configurazione e requisiti

Per ciascun lab, riceverai un nuovo progetto Google Cloud e un insieme di risorse per un periodo di tempo limitato senza alcun costo aggiuntivo.

  1. Fai clic sul pulsante Avvia lab. Se devi effettuare il pagamento per il lab, si apre una finestra popup per permetterti di selezionare il metodo di pagamento. A sinistra, trovi il riquadro Dettagli lab con le seguenti informazioni:

    • Il pulsante Apri console Google Cloud
    • Tempo rimanente
    • Credenziali temporanee da utilizzare per il lab
    • Altre informazioni per seguire questo lab, se necessario
  2. Fai clic su Apri console Google Cloud (o fai clic con il tasto destro del mouse e seleziona Apri link in finestra di navigazione in incognito se utilizzi il browser Chrome).

    Il lab avvia le risorse e apre un'altra scheda con la pagina di accesso.

    Suggerimento: disponi le schede in finestre separate posizionate fianco a fianco.

    Nota: se visualizzi la finestra di dialogo Scegli un account, fai clic su Usa un altro account.
  3. Se necessario, copia il Nome utente di seguito e incollalo nella finestra di dialogo di accesso.

    {{{user_0.username | "Username"}}}

    Puoi trovare il Nome utente anche nel riquadro Dettagli lab.

  4. Fai clic su Avanti.

  5. Copia la Password di seguito e incollala nella finestra di dialogo di benvenuto.

    {{{user_0.password | "Password"}}}

    Puoi trovare la Password anche nel riquadro Dettagli lab.

  6. Fai clic su Avanti.

    Importante: devi utilizzare le credenziali fornite dal lab. Non utilizzare le credenziali del tuo account Google Cloud. Nota: utilizzare il tuo account Google Cloud per questo lab potrebbe comportare addebiti aggiuntivi.
  7. Fai clic nelle pagine successive:

    • Accetta i termini e le condizioni.
    • Non inserire opzioni di recupero o l'autenticazione a due fattori, perché si tratta di un account temporaneo.
    • Non registrarti per le prove gratuite.

Dopo qualche istante, la console Google Cloud si apre in questa scheda.

Nota: per visualizzare un menu con un elenco di prodotti e servizi Google Cloud, fai clic sul menu di navigazione in alto a sinistra. Icona menu di navigazione

Attività 1: prepara l'ambiente del lab

Nell'attività, creerai un bucket Cloud Storage, poi scaricherai un file di esempio che utilizzerai nell'attività successiva.

Crea un bucket Cloud Storage

  1. Nel menu di navigazione (Icona menu di navigazione) della console Google Cloud, fai clic su Cloud Storage > Bucket.
Nota: i bucket devono avere un nome globalmente univoco. Puoi utilizzare parte del tuo PROJECT_ID_1 nel nome per renderlo univoco. Ad esempio, se PROJECT_ID_1 è myproj-154920 il nome del bucket potrebbe essere storecore154920
  1. Fai clic su Crea.
  2. Specifica quanto segue, fai clic su Continua dopo ogni campo e lascia tutte le impostazioni rimanenti ai loro valori predefiniti.
Proprietà Valore (digita o seleziona)
Nome Inserisci un nome globalmente univoco
Tipo di località Regione
Regione
Controllo dell'accesso Granulare (autorizzazione a livello di oggetto in aggiunta alle autorizzazioni a livello di bucket)
  1. Fai clic su Crea.
  2. Per consentire l'accesso pubblico, deseleziona Applica la prevenzione dell'accesso pubblico in questo bucket, quindi fai clic su Conferma.
  3. Prendi nota del nome del bucket. Verrà utilizzato più tardi in questo lab e indicato come [BUCKET_NAME_1].

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Crea un bucket Cloud Storage

Scarica un file di esempio utilizzando CURL e crea due copie

  1. Nella console Cloud, fai clic su Attiva Cloud Shell (Cloud Shell).
  2. Se richiesto, fai clic su Continua > Autorizza.
  3. Archivia [BUCKET_NAME_1] in una variabile di ambiente:
export BUCKET_NAME_1=enter bucket name 1 here
  1. Verificalo con il comando echo:
echo $BUCKET_NAME_1
  1. Esegui questo comando per scaricare un file di esempio (il file di esempio è un file HTML della documentazione di Hadoop disponibile pubblicamente):
curl \ https://hadoop.apache.org/docs/current/\ hadoop-project-dist/hadoop-common/\ ClusterSetup.html > setup.html
  1. Per creare copie del file, esegui questi comandi:
cp setup.html setup2.html cp setup.html setup3.html

Attività 2: elenchi di controllo dell'accesso (ACL)

In questa attività, imposterai gli elenchi di controllo dell'accesso per limitare l'accesso al file che copierai nel bucket Cloud Storage.

Copia il file nel bucket e configura l'elenco di controllo dell'accesso

  1. Esegui questo comando per copiare il primo file nel bucket:
gcloud storage cp setup.html gs://$BUCKET_NAME_1/
  1. Per ottenere l'elenco per gli accessi predefinito che è stato assegnato a setup.html, esegui questo comando:
gcloud storage objects get-iam-policy gs://$BUCKET_NAME_1/setup.html > acl.txt cat acl.txt
  1. Per impostare l'elenco di accesso come privato e verificare i risultati, esegui questi comandi:
gcloud storage objects update gs://$BUCKET_NAME_1/setup.html --predefined-acl=private gcloud storage objects get-iam-policy gs://$BUCKET_NAME_1/setup.html > acl2.txt cat acl2.txt
  1. Per aggiornare l'elenco di accesso e rendere il file leggibile pubblicamente, esegui questi comandi:
gcloud storage objects add-iam-policy-binding gs://$BUCKET_NAME_1/setup.html \ --member="allUsers" \ --role="roles/storage.legacyObjectReader" gcloud storage objects get-iam-policy gs://$BUCKET_NAME_1/setup.html > acl3.txt cat acl3.txt

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Rendi il file leggibile pubblicamente

Esamina il file nella console Cloud

  1. Nel menu di navigazione (Icona menu di navigazione) della console Google Cloud, fai clic su Cloud Storage > Bucket.
  2. Fai clic su [BUCKET_NAME_1].
  3. Verifica che per il file setup.html, per Accesso pubblico sia disponibile un Link pubblico.
Nota: se non riesci a visualizzare il link pubblico, aggiorna la pagina.

Elimina il file locale e copialo da Cloud Storage

  1. Torna a Cloud Shell. Se necessario, fai clic su Attiva Cloud Shell (Cloud Shell).
  2. Esegui questo comando per eliminare il file di configurazione:
rm setup.html
  1. Per verificare che il file sia stato eliminato, esegui questo comando:
ls
  1. Per copiare nuovamente il file dal bucket, esegui questo comando:
gcloud storage cp gs://$BUCKET_NAME_1/setup.html setup.html

Attività 3: chiavi di crittografia fornite dal cliente (CSEK)

In questa attività genererai una chiave CSEK per criptare i file archiviati nel bucket Cloud Storage.

Genera una chiave CSEK

Per il passaggio successivo, è necessaria una chiave AES-256 base-64.

  1. Esegui questo comando per creare una chiave:
python3 -c 'import base64; import os; print(base64.encodebytes(os.urandom(32)))'

Risultato (output di esempio):

b'tmxElCaabWvJqR7uXEWQF39DhWTcDvChzuCmpHe6sb0=\n'
  1. Copia il valore della chiave generata escludendo b' e \n' dall'output comando. La chiave deve essere nel formato tmxElCaabWvJqR7uXEWQF39DhWTcDvChzuCmpHe6sb0=.

Modifica il file boto

I controlli di crittografia sono contenuti in un file di configurazione gsutil denominato .boto.

  1. Per visualizzare e aprire il file boto, esegui questi comandi:
ls -al nano .boto

Nota: se il file .boto è vuoto, chiudi l'editor nano con Ctrl+X e genera un nuovo file .boto utilizzando il comando gsutil config -n. Quindi, prova a riaprire il file con i comandi riportati sopra.

Se il file .boto è ancora vuoto, potresti doverlo individuare utilizzando il comando gsutil version -l.
  1. Individua la riga con "#encryption_key="
Nota: nella parte inferiore dell'editor nano sono disponibili scorciatoie per navigare rapidamente tra i file. Utilizza la scorciatoia Where Is per individuare rapidamente la riga con #encryption_key=.
  1. Rimuovi il commento dalla riga rimuovendo il carattere # e incolla la chiave generata in precedenza alla fine.

Esempio (è un esempio):

Before: # encryption_key= After: encryption_key=tmxElCaabWvJqR7uXEWQF39DhWTcDvChzuCmpHe6sb0=
  1. Premi Ctrl+O e Invio per salvare il file boto, quindi premi Ctrl+X per uscire da nano.

Carica i file di configurazione rimanenti (criptati) e verifica nella console Cloud

  1. Torna alla console Cloud.

  2. Per caricare i restanti file setup.html, esegui questi comandi:

gsutil kms encryption -d gs://$BUCKET_NAME_1 gcloud storage cp setup2.html gs://$BUCKET_NAME_1/ gcloud storage cp setup3.html gs://$BUCKET_NAME_1/
  1. Fai clic su [BUCKET_NAME_1]. I file setup2.html e setup3.html mostrano che sono criptati dal cliente.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Chiavi di crittografia fornite dal cliente (CSEK)

Elimina i file locali, copia i nuovi file e verifica la crittografia

  1. Per eliminare i file locali, esegui questo comando in Cloud Shell:
rm setup*
  1. Per copiare nuovamente i file dal bucket, esegui questo comando:
gcloud storage cp gs://$BUCKET_NAME_1/setup* ./
  1. Per scrivere i contenuti dei file criptati nell'output standard allo scopo di verificare se sono stati ripristinati, esegui questi comandi:
cat setup.html cat setup2.html cat setup3.html

Attività 4: ruota le chiavi CSEK

In questa attività ruoterai le CSEK utilizzate per criptare i dati in Cloud Storage, garantendo la continuità della sicurezza dei dati.

Sposta la chiave di crittografia CSEK attuale per decriptare la chiave

  1. Esegui questo comando per aprire il file .boto:
nano .boto
  1. Commenta la riga encryption\_key attuale aggiungendo il carattere # all'inizio.
Nota: nella parte inferiore dell'editor nano sono disponibili scorciatoie per navigare rapidamente tra i file. Utilizza la scorciatoia Where Is per individuare rapidamente la riga con #encryption_key=.
  1. Rimuovi il commento da decryption\_key1 rimuovendo il carattere # e copia la chiave attuale dalla riga encryption\_key alla riga decryption\_key1.

Risultato (output di esempio):

Before: encryption_key=2dFWQGnKhjOcz4h0CudPdVHLG2g+OoxP8FQOIKKTzsg= # decryption_key1= After: # encryption_key=2dFWQGnKhjOcz4h0CudPdVHLG2g+OoxP8FQOIKKTzsg= decryption_key1=2dFWQGnKhjOcz4h0CudPdVHLG2g+OoxP8FQOIKKTzsg=
  1. Premi Ctrl+O e Invio per salvare il file boto, quindi premi Ctrl+X per uscire da nano.
Nota: in pratica, elimini la vecchia chiave CSEK dalla riga encryption_key.

Genera un'altra chiave CSEK e aggiungila al file boto

  1. Esegui questo comando per generare una nuova chiave:
python3 -c 'import base64; import os; print(base64.encodebytes(os.urandom(32)))'
  1. Copia il valore della chiave generata escludendo b' e \n' dall'output comando. La chiave deve essere nel formato tmxElCaabWvJqR7uXEWQF39DhWTcDvChzuCmpHe6sb0=.
  2. Per aprire il file boto, esegui questo comando:
nano .boto
  1. Rimuovi il commento dalla riga encryption_key e incolla il nuovo valore della chiave per encryption_key=.

Risultato (output di esempio):

Before: # encryption_key=2dFWQGnKhjOcz4h0CudPdVHLG2g+OoxP8FQOIKKTzsg= After: encryption_key=HbFK4I8CaStcvKKIx6aNpdTse0kTsfZNUjFpM+YUEjY=
  1. Premi Ctrl+O e Invio per salvare il file boto, quindi premi Ctrl+X per uscire da nano.

Riscrivi la chiave per il file 1 e commenta la vecchia chiave di decriptazione

Quando un file è criptato, la riscrittura del file lo decripta utilizzando la chiave decryption_key1 che avevi impostato in precedenza e lo cripta con la nuova chiave encryption_key.

Stai riscrivendo la chiave per setup2.html, ma non per setup3.html, in modo da poter vedere cosa succede se la rotazione delle chiavi non viene eseguita correttamente.

  1. Esegui questo comando:
gcloud storage objects update gs://$BUCKET_NAME_1/setup2.html
  1. Per aprire il file boto, esegui questo comando:
nano .boto
  1. Commenta la riga decryption\_key1 attuale aggiungendo di nuovo il carattere #.

Risultato (output di esempio):

Before: decryption_key1=2dFWQGnKhjOcz4h0CudPdVHLG2g+OoxP8FQOIKKTzsg= After: # decryption_key1=2dFWQGnKhjOcz4h0CudPdVHLG2g+OoxP8FQOIKKTzsg=
  1. Premi Ctrl+O e Invio per salvare il file boto, quindi premi Ctrl+X per uscire da nano.
Nota: in pratica, elimini la vecchia chiave CSEK dalla riga decryption_key1.

Scarica setup2 e setup3

  1. Per scaricare setup2.html, esegui questo comando:
gcloud storage cp gs://$BUCKET_NAME_1/setup2.html recover2.html
  1. Per scaricare setup3.html, esegui questo comando:
gcloud storage cp gs://$BUCKET_NAME_1/setup3.html recover3.html Nota: cosa è successo? setup3.html non è stato riscritto con la nuova chiave, pertanto non può più essere decriptato e la copia non riuscirà.

Hai ruotato correttamente le chiavi CSEK.

Attività 5: abilita la gestione del ciclo di vita

In questa attività, attiverai la gestione del ciclo di vita di un bucket Cloud Storage per automatizzare l'eliminazione degli oggetti dopo un periodo specificato.

Visualizza l'attuale policy del ciclo di vita per il bucket

  • Esegui questo comando per visualizzare l'attuale policy del ciclo di vita:
gcloud storage buckets describe gs://$BUCKET_NAME_1 --format="json(lifecycle)" Nota: non è presente una configurazione del ciclo di vita. Creane una nei passaggi successivi.

Crea un file JSON delle policy del ciclo di vita

  1. Per creare un file denominato life.json, esegui questo comando:
nano life.json Nota: puoi anche utilizzare l'editor di Cloud Shell per creare questo file.
  1. Incolla il valore seguente nel file life.json:
{ "rule": [ { "action": {"type": "Delete"}, "condition": {"age": 31} } ] } Nota: queste istruzioni indicano a Cloud Storage di eliminare l'oggetto dopo 31 giorni.
  1. Premi Ctrl+O e Invio per salvare il file, quindi premi Ctrl+X per uscire da nano.

Imposta la policy e verificala

  1. Per impostare la policy, esegui questo comando:
gcloud storage buckets update gs://$BUCKET_NAME_1 --lifecycle-file=life.json
  1. Per verificare la policy, esegui questo comando:
gcloud storage buckets describe gs://$BUCKET_NAME_1 --format="json(lifecycle_config)"

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Abilita la gestione del ciclo di vita

Attività 6: abilita il controllo delle versioni

In questa attività, abiliterai il controllo delle versioni di un bucket Cloud Storage per proteggere i dati da eventuali eliminazioni o modifiche accidentali.

Visualizza lo stato del controllo delle versioni per il bucket e abilita il controllo delle versioni

  1. Esegui questo comando per visualizzare lo stato attuale del controllo delle versioni per il bucket:
gcloud storage buckets describe gs://$BUCKET_NAME_1 --format="json(versioning)" Nota: se la policy è Sospeso, significa che non è abilitato.
  1. Per abilitare il controllo delle versioni, esegui questo comando:
gcloud storage buckets update gs://$BUCKET_NAME_1 --versioning
  1. Per verificare che il controllo delle versioni sia stato abilitato, esegui questo comando:
gcloud storage buckets describe gs://$BUCKET_NAME_1 --format="json(versioning_enabled)"

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Abilita il controllo delle versioni

Crea più versioni del file di esempio nel bucket

  1. Verifica le dimensioni del file di esempio:
ls -al setup.html
  1. Apri il file setup.html:
nano setup.html
  1. Elimina 5 righe qualsiasi da setup.html per modificare le dimensioni del file.
  2. Premi Ctrl+O e Invio per salvare il file, quindi premi Ctrl+X per uscire da nano.
  3. Copia il file nel bucket con l'opzione di controllo delle versioni -v come segue:
gcloud storage cp -v setup.html gs://$BUCKET_NAME_1
  1. Apri il file setup.html:
nano setup.html
  1. Elimina altre 5 righe da setup.html per modificare le dimensioni del file.
  2. Premi Ctrl+O e Invio per salvare il file, quindi premi Ctrl+X per uscire da nano.
  3. Copia il file nel bucket con l'opzione di controllo delle versioni -v come segue:
gcloud storage cp -v setup.html gs://$BUCKET_NAME_1

Elenca tutte le versioni del file

  1. Per visualizzare l'elenco di tutte le versioni del file, esegui questo comando:
gcloud storage ls -a gs://$BUCKET_NAME_1/setup.html
  1. Evidenzia e copia il nome della versione meno recente del file (la prima elencata), che sarà indicata come [VERSION_NAME] nel passaggio successivo.
Nota: assicurati di copiare il percorso completo del file, iniziando con gs://
  1. Archivia il valore della versione nella variabile di ambiente [VERSION_NAME].
export VERSION_NAME=Enter VERSION name here
  1. Verificalo con il comando echo:
echo $VERSION_NAME

Risultato (output di esempio):

gs://BUCKET_NAME_1/setup.html#1584457872853517

Scarica la versione originale del file, la meno recente, e verifica il ripristino

  1. Scarica la versione originale del file:
gcloud storage cp $VERSION_NAME recovered.txt
  1. Per verificare il ripristino, esegui questi comandi:
ls -al setup.html ls -al recovered.txt Nota: hai ripristinato il file originale dalla versione di backup. Nota che l'originale è più grande della versione attuale perché avevi eliminato delle righe.

Attività 7: sincronizza una directory con un bucket

In questa attività sincronizzi una directory locale e le relative sottodirectory con un bucket Cloud Storage utilizzando il comando gsutil rsync.

Crea una directory nidificata ed esegui la sincronizzazione con un bucket

Crea una struttura di directory nidificata in modo da poter osservare cosa succede quando viene copiata in modo ricorsivo in un bucket.

  1. Esegui questi comandi:
mkdir firstlevel mkdir ./firstlevel/secondlevel cp setup.html firstlevel cp setup.html firstlevel/secondlevel
  1. Per sincronizzare la directory firstlevel sulla VM con il tuo bucket, esegui questo comando:
gcloud storage rsync ./firstlevel gs://$BUCKET_NAME_1/firstlevel --recursive

Esamina i risultati

  1. Nel menu di navigazione (Icona menu di navigazione) della console Google Cloud, fai clic su Cloud Storage > Bucket.
  2. Fai clic su [BUCKET_NAME_1]. Osserva le sottocartelle nel bucket.
  3. Fai clic su /firstlevel e quindi su /secondlevel.
  4. Confronta i dati visualizzati nella console Cloud con i risultati del seguente comando:
gcloud storage ls -r gs://$BUCKET_NAME_1/firstlevel
  1. Esci da Cloud Shell:
exit

Attività 8: riepilogo

In questo lab hai imparato a creare e a lavorare con bucket e oggetti, oltre a conoscere le seguenti funzionalità di Cloud Storage:

  • CSEK: chiave di crittografia fornita dal cliente
  • Usare le tue chiavi di crittografia
  • Ruotare le chiavi
  • ACL: elenco di controllo dell'accesso
  • Impostare un ACL per l'accesso privato, quindi cambialo in pubblico
  • Gestione del ciclo di vita
  • Impostare la policy per eliminare gli oggetti dopo 31 giorni
  • Controllo delle versioni
  • Creare una versione e ripristinare una versione precedente
  • Sincronizzazione directory
  • Sincronizzare in modo ricorsivo una directory di una VM con un bucket

Termina il lab

Una volta completato il lab, fai clic su Termina lab. Google Skills rimuove le risorse che hai utilizzato ed esegue la pulizia dell'account.

Avrai la possibilità di inserire una valutazione in merito alla tua esperienza. Seleziona il numero di stelle applicabile, inserisci un commento, quindi fai clic su Invia.

Il numero di stelle corrisponde alle seguenti valutazioni:

  • 1 stella = molto insoddisfatto
  • 2 stelle = insoddisfatto
  • 3 stelle = esperienza neutra
  • 4 stelle = soddisfatto
  • 5 stelle = molto soddisfatto

Se non vuoi lasciare un feedback, puoi chiudere la finestra di dialogo.

Per feedback, suggerimenti o correzioni, utilizza la scheda Assistenza.

Copyright 2026 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.

Prima di iniziare

  1. I lab creano un progetto e risorse Google Cloud per un periodo di tempo prestabilito
  2. I lab hanno un limite di tempo e non possono essere messi in pausa. Se termini il lab, dovrai ricominciare dall'inizio.
  3. In alto a sinistra dello schermo, fai clic su Inizia il lab per iniziare

Utilizza la navigazione privata

  1. Copia il nome utente e la password forniti per il lab
  2. Fai clic su Apri console in modalità privata

Accedi alla console

  1. Accedi utilizzando le tue credenziali del lab. L'utilizzo di altre credenziali potrebbe causare errori oppure l'addebito di costi.
  2. Accetta i termini e salta la pagina di ripristino delle risorse
  3. Non fare clic su Termina lab a meno che tu non abbia terminato il lab o non voglia riavviarlo, perché il tuo lavoro verrà eliminato e il progetto verrà rimosso

Questi contenuti non sono al momento disponibili

Ti invieremo una notifica via email quando sarà disponibile

Bene.

Ti contatteremo via email non appena sarà disponibile

Un lab alla volta

Conferma per terminare tutti i lab esistenti e iniziare questo

Utilizza la navigazione privata per eseguire il lab

Il modo migliore per eseguire questo lab è utilizzare una finestra del browser in incognito o privata. Ciò evita eventuali conflitti tra il tuo account personale e l'account studente, che potrebbero causare addebiti aggiuntivi sul tuo account personale.