L'AO esegue operazioni di crittografia e decriptazione tramite l'interfaccia a riga di comando con air gap di Google Distributed Cloud (GDC) su KMS tramite un client gRPC.
Prima di iniziare
Prima di eseguire le operazioni KMS, configura kubectl per accedere al server API Management e ottenere le autorizzazioni necessarie.
Configurare l'accesso al server dell'API Management
Configura kubectl per accedere al server dell'API Management:
- Se non l'hai ancora fatto, recupera un file kubeconfig per il server API Management utilizzando l'interfaccia a riga di comando (CLI) gcloud.
Imposta la variabile di ambiente
MANAGEMENT_API_SERVER:export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIGSostituisci
PATH_TO_KUBECONFIGcon il percorso del file kubeconfig generato.Se non l'hai ancora fatto, scarica, installa e configura gcloud CLI. Per farlo, segui la panoramica di gcloud CLI.
Autorizzazioni obbligatorie
Per ottenere le autorizzazioni necessarie, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Sviluppatore KMS (kms-developer) nel tuo progetto.
Criptare i dati
Per criptare i dati, utilizza il comando gdcloud kms keys encrypt. Questo comando cripta un
determinato file di testo normale utilizzando la chiave AEAD e lo scrive in un file di testo cifrato
denominato.
Per criptare i dati, trasmetti il nome della chiave e quanto segue:
gdcloud kms keys encrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \ --plaintext-file=PLAINTEXT_PATH \ --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \ --ciphertext-file=CIPHERTEXT_PATHSostituisci le seguenti variabili:
- NAMESPACE: lo spazio dei nomi del progetto, ad esempio:
kms-test1. - KEY_NAME: il nome della chiave utilizzata per criptare il
testo non criptato, ad esempio
key-1. - PLAINTEXT_PATH: il percorso del file che contiene il testo non crittografato da criptare.
- ADDITIONAL_AUTHENTICATED_DATA_FILE: un file facoltativo che contiene dati autenticati aggiuntivi (AAD). AAD viene utilizzato per controlli di integrità e protegge i tuoi dati da un attacco confused deputy. AAD e il testo non crittografato hanno un limite di dimensione di 64 KB.
- CIPHERTEXT_PATH: il percorso del file che contiene il testo non crittografato.
Dopo aver eseguito il comando, vedrai un file specificato nel flag
--ciphertext-fileche contiene i contenuti criptati del file di testo normale.- NAMESPACE: lo spazio dei nomi del progetto, ad esempio:
Decriptare i dati
Per decriptare i dati, utilizza il comando gdcloud kms keys decrypt. Questo comando decripta un file di testo crittografato specificato utilizzando la chiave AEAD e lo scrive in un file di testo normale denominato.
Per decriptare il testo crittografato, inserisci il nome della chiave e quanto segue:
gdcloud kms keys decrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \ --ciphertext-file=CIPHERTEXT_PATH \ --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \ --plaintext-file=PLAINTEXT_PATHSostituisci le seguenti variabili:
- NAMESPACE: lo spazio dei nomi del progetto.
- KEY_NAME: il nome della chiave utilizzata per criptare il testo non criptato.
- CIPHERTEXT_PATH: il percorso del file che vuoi decriptare.
- ADDITIONAL_AUTHENTICATED_DATA_FILE: un file facoltativo che contiene dati autenticati aggiuntivi (AAD). AAD viene utilizzato per controlli di integrità e protegge i tuoi dati da un attacco confused deputy. AAD e il testo non crittografato hanno un limite di dimensione di 64 KB.
- PLAINTEXT_PATH: il percorso del file che contiene il testo non crittografato decriptato.
Dopo aver eseguito il comando, viene visualizzato un file specificato nel flag
--plaintext-fileche contiene i dati decriptati.