L'AO esegue operazioni di firma e verifica tramite Google Distributed Cloud (GDC) con air gap al 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.
Dati della firma
Per firmare i dati, utilizza il comando gdcloud kms keys asymmetric-sign. Questo comando
crea una firma digitale di un file di input utilizzando la chiave Signing e salva
la firma codificata in base64.
Per firmare i dati, trasmetti il nome della chiave e quanto segue:
gdcloud kms keys asymmetric-sign \ namespaces/NAMESPACE/signingKeys/KEY_NAME \ --input-file=INPUT_PATH \ --signature-file=SIGNATURE_FILESostituisci le seguenti variabili:
- NAMESPACE: lo spazio dei nomi del progetto, ad esempio:
kms-test1. - KEY_NAME: il nome della chiave utilizzata per la firma, ad esempio
key-1. - INPUT_PATH: il percorso del file di input che vuoi far firmare.
- SIGNATURE_FILE: il percorso del file di output in cui salvare la firma codificata in base64.
Dopo aver eseguito il comando, vedrai un file di output specificato nel flag
--signature-fileche contiene la firma con codifica Base64.- NAMESPACE: lo spazio dei nomi del progetto, ad esempio:
Verifica dei dati
Dopo aver firmato i dati, verifica la firma digitale base64 utilizzando
il comando gdcloud kms keys asymmetric-verify. Questo comando verifica se la firma digitale con codifica Base64 che ricevi dopo aver eseguito il comando gdcloud kms keys asymmetric-sign è valida.
Per verificare la firma, passa il file della firma e quanto segue:
gdcloud kms keys asymmetric-verify \ namespaces/NAMESPACE/signingKeys/KEY_NAME \ --input-file=INPUT_PATH \ --signature-file=SIGNATURE_FILEDopo aver eseguito il comando, se l'operazione è riuscita, viene visualizzato l'output
Verification OK. In caso contrario, vedrai l'output di erroreVerification Failure.