Questa pagina descrive come utilizzare la tua chiave di crittografia, indicata come chiave di crittografia fornita dal cliente, con Cloud Storage. Per altre opzioni di crittografia in Cloud Storage, consulta Opzioni di crittografia dei dati.
Generare la tua chiave di crittografia
Esistono molti modi per generare una chiave di crittografia AES-256 codificata in base64. Ecco alcuni esempi:
C++
Per ulteriori informazioni, consulta API Cloud Storage C++ documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta API Cloud Storage Go documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta API Cloud Storage Python documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per ulteriori informazioni, consulta API Cloud Storage Ruby documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Carica con la tua chiave di crittografia
Per utilizzare le chiavi di crittografia fornite dal cliente per caricare un oggetto:
Console
La console Google Cloud non può essere utilizzata per caricare un oggetto con una chiave di crittografia fornita dal cliente. Utilizza Google Cloud CLI o il client librerie.
Riga di comando
Utilizza il comando gcloud storage cp
con --encryption-key
Segnala:
gcloud storage cp SOURCE_DATA gs://BUCKET_NAME/OBJECT_NAME --encryption-key=YOUR_ENCRYPTION_KEY
Dove:
SOURCE_DATA
è la posizione di origine dei dati che stai crittografando. Può trattarsi di qualsiasi località di origine supportata Comandocp
. Ad esempio, un file locale comeDesktop/dogs.png
o un altro oggetto Cloud Storage comegs://my-bucket/pets/old-dog.png
.BUCKET_NAME
è il nome della destinazione per questo comando di copia. Ad esempio,my-bucket
.OBJECT_NAME
è il nome dell'oggetto finale criptato. Ad esempio,pets/new-dog.png
.YOUR_ENCRYPTION_KEY
è la chiave AES-256 che vuoi utilizzare per criptare l'oggetto caricato.
Librerie client
C++
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta API Cloud Storage Node.js documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Per ulteriori informazioni, consulta API Cloud Storage PHP documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
API REST
API JSON
Avere gcloud CLI installato e inizializzato, che consente generi un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con una richiesta diPOST
oggetto:curl -X POST --data-binary @OBJECT \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ -H "x-goog-encryption-algorithm: AES256" \ -H "x-goog-encryption-key: YOUR_ENCRYPTION_KEY" \ -H "x-goog-encryption-key-sha256: HASH_OF_YOUR_KEY" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=media&name=OBJECT_NAME"
Dove:
OBJECT
è il percorso dell'oggetto in cui ti trovi caricamento in corso. Ad esempio,Desktop/dogs.png
.OBJECT_CONTENT_TYPE
è il tipo di contenuto dell'oggetto. Ad esempio:image/png
.YOUR_ENCRYPTION_KEY
è il Chiave AES-256 utilizzata per criptare l'oggetto caricato.HASH_OF_YOUR_KEY
è l'hash SHA-256 per la tua chiave AES-256.BUCKET_NAME
è il nome del bucket in cui stai caricando l'oggetto. Ad esempio,my-bucket
.OBJECT_NAME
è il nome codificato nell'URL del dell'oggetto che stai caricando. Ad esempio,pets/dog.png
, codificato come URL comepets%2Fdog.png
.
Per ulteriori informazioni sulle intestazioni specifiche per la crittografia, consulta Intestazioni delle richieste di crittografia.
API XML
Avere installato e inizializzato l'interfaccia a riga di comando gcloud, che consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API XML con un RichiestaPUT
OBJECT:curl -X -i PUT --data-binary @OBJECT \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ -H "x-goog-encryption-algorithm: AES256" \ -H "x-goog-encryption-key: YOUR_ENCRYPTION_KEY" \ -H "x-goog-encryption-key-sha256: HASH_OF_YOUR_KEY" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Dove:
OBJECT
è il percorso dell'oggetto in cui ti trovi caricamento in corso. Ad esempio,Desktop/dogs.png
.OBJECT_CONTENT_TYPE
è il tipo di contenuto dell'oggetto. Ad esempio:image/png
.YOUR_ENCRYPTION_KEY
è la chiave AES-256 utilizzata per criptare l'oggetto caricato.HASH_OF_YOUR_KEY
è l'hash SHA-256 per la tua chiave AES-256.BUCKET_NAME
è il nome del bucket in cui stai caricando l'oggetto. Ad esempio,my-bucket
.OBJECT_NAME
è il nome con codifica URL dell'oggetto che stai caricando. Ad esempio,pets/dog.png
, Codificato come URLpets%2Fdog.png
.
Per ulteriori informazioni sulle intestazioni specifiche per la crittografia, consulta Intestazioni delle richieste di crittografia.
Scarica gli oggetti che hai criptato
Per scaricare un oggetto archiviato in Cloud Storage criptato con un oggetto chiave di crittografia fornita dal cliente:
Console
La console Google Cloud non può essere utilizzata per scaricare oggetti criptati con chiavi di crittografia fornite dal cliente. Utilizza invece Google Cloud CLI o le librerie client.
Riga di comando
Utilizza il comando gcloud storage cp
con il flag --decryption-keys
:
gcloud storage cp gs://BUCKET_NAME/OBJECT_NAME OBJECT_DESTINATION --decryption-keys=YOUR_ENCRYPTION_KEY
Dove:
BUCKET_NAME
è il nome del bucket contenente l'oggetto che stai scaricando. Ad esempio,my-bucket
.OBJECT_NAME
è il nome dell'oggetto che stai scaricando. Ad esempio,pets/dog.png
.OBJECT_DESTINATION
è la posizione in cui vuoi salvare l'oggetto. Ad esempio,Desktop
.YOUR_ENCRYPTION_KEY
è la chiave AES-256 utilizzata per criptare l'oggetto quando è stato caricato.
Librerie client
C++
Per ulteriori informazioni, consulta API Cloud Storage C++ documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta API Cloud Storage Go documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta API Cloud Storage Java documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta API Cloud Storage Node.js documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per ulteriori informazioni, consulta API Cloud Storage PHP documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
API REST
API JSON
Avere installato e inizializzato l'interfaccia a riga di comando gcloud, che consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con una richiesta diGET
oggetto:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-encryption-algorithm: AES256" \ -H "x-goog-encryption-key: YOUR_ENCRYPTION_KEY" \ -H "x-goog-encryption-key-sha256: HASH_OF_YOUR_KEY" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media"
Dove:
YOUR_ENCRYPTION_KEY
è il La chiave AES-256 utilizzata per criptare l'oggetto.HASH_OF_YOUR_KEY
è l'hash SHA-256 per la tua chiave AES-256.SAVE_TO_LOCATION
è la posizione in cui vuoi salvare l'oggetto. Ad esempio,Desktop/dog.png
.BUCKET_NAME
è il nome del bucket da da cui stai scaricando l'oggetto. Ad esempio,my-bucket
.OBJECT_NAME
è il nome codificato nell'URL del che stai scaricando. Ad esempio,pets/dog.png
, Codificato come URLpets%2Fdog.png
.
Per ulteriori informazioni sulle intestazioni specifiche per la crittografia, consulta Intestazioni delle richieste di crittografia.
API XML
Avere gcloud CLI installato e inizializzato, che consente generi un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API XML con una richiesta OBJECTGET
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-encryption-algorithm: AES256" \ -H "x-goog-encryption-key: YOUR_ENCRYPTION_KEY" \ -H "x-goog-encryption-key-sha256: HASH_OF_YOUR_KEY" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Dove:
YOUR_ENCRYPTION_KEY
è la chiave AES-256 utilizzata per criptare l'oggetto.HASH_OF_YOUR_KEY
è l'hash SHA-256 per la tua chiave AES-256.SAVE_TO_LOCATION
è la posizione in cui vuoi salvare l'oggetto. Ad esempio,Desktop/dog.png
.BUCKET_NAME
è il nome del bucket da da cui stai scaricando l'oggetto. Ad esempio,my-bucket
.OBJECT_NAME
è il nome con codifica URL dell'oggetto che stai scaricando. Ad esempio,pets/dog.png
, Codificato come URLpets%2Fdog.png
.
Per ulteriori informazioni sulle intestazioni specifiche per la crittografia, consulta Intestazioni delle richieste di crittografia.
Ruotare le chiavi di crittografia
Per ruotare una chiave di crittografia fornita dal cliente:
Console
Non è possibile utilizzare la console Google Cloud per ruotare le risorse fornite dal cliente chiavi di crittografia. Utilizza Google Cloud CLI o le librerie client.
Riga di comando
Utilizza il comando gcloud storage objects update
con i flag appropriati:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME --encryption-key=NEW_KEY --decryption-keys=OLD_KEY
Dove:
BUCKET_NAME
è il nome del bucket che contiene l'oggetto di cui stai ruotando la chiave. Ad esempio:my-bucket
.OBJECT_NAME
è il nome dell'oggetto la cui che stai ruotando. Ad esempio,pets/dog.png
.NEW_KEY
è la nuova chiave di crittografia fornita dal cliente che vuoi utilizzare per criptare l'oggetto.OLD_KEY
è l'attuale valore fornito dal cliente chiave di crittografia utilizzata per criptare l'oggetto.
Librerie client
C++
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta API Cloud Storage Go documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta API Cloud Storage Node.js documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per ulteriori informazioni, consulta API Cloud Storage PHP documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per ulteriori informazioni, consulta API Cloud Storage Ruby documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
API REST
API JSON
Avere gcloud CLI installato e inizializzato, che consente generi un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con un RichiestaPOST
Oggetto:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Length: 0" \ -H "x-goog-encryption-algorithm: AES256" \ -H "x-goog-encryption-key: NEW_ENCRYPTION_KEY" \ -H "x-goog-encryption-key-sha256: HASH_OF_NEW_KEY" \ -H "x-goog-copy-source-encryption-algorithm: AES256" \ -H "x-goog-copy-source-encryption-key: OLD_ENCRYPTION_KEY" \ -H "x-goog-copy-source-encryption-key-sha256: HASH_OF_OLD_KEY" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME/rewriteTo/b/BUCKET_NAME/o/OBJECT_NAME"
Dove:
NEW_ENCRYPTION_KEY
è la nuova chiave AES-256 utilizzati per criptare l'oggetto,HASH_OF_NEW_KEY
è l'hash SHA-256 per la nuova chiave AES-256.OLD_ENCRYPTION_KEY
è la chiave AES-256 corrente utilizzata per criptare l'oggetto.HASH_OF_OLD_KEY
è l'attuale SHA-256 per la tua chiave AES-256.BUCKET_NAME
è il nome del bucket contenente l'oggetto pertinente. Ad esempio,my-bucket
.OBJECT_NAME
è il nome con codifica URL dell'oggetto di cui stai ruotando le chiavi. Ad esempio,pets/dog.png
, codificato come URL comepets%2Fdog.png
.
Per ulteriori informazioni, consulta Intestazioni delle richieste di crittografia specifiche per la crittografia.
API XML
L'API XML non supporta la rotazione di una crittografia fornita dal cliente riscrivendo l'oggetto. Per applicare una nuova chiave fornita dal cliente a un utilizzando l'API XML, devi:
Passaggi successivi
Scopri di più sulle chiavi di crittografia fornite dal cliente.
Scopri come ruotare la chiave di crittografia fornita dal cliente in una chiave Cloud KMS