Questa pagina mostra come recuperare la parte della chiave pubblica di una versione della chiave asimmetrica attivata.
La chiave pubblica è in formato PEM (Privacy-Electronic Electronic Mail). Per ulteriori informazioni, consulta le sezioni della RFC 7468 relative alle considerazioni generali e alla codifica testuale delle informazioni pubbliche sulle chiavi dei soggetti.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per recuperare una chiave pubblica, chiedi al tuo amministratore di concederti il ruolo IAM Visualizzatore chiavi pubbliche di Cloud KMS (roles/cloudkms.publicKeyViewer
) nella chiave o in una risorsa padre.
Per ulteriori informazioni sulla concessione dei ruoli, consulta
Gestire l'accesso.
Questo ruolo predefinito contiene le autorizzazioni necessarie per recuperare una chiave pubblica. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
-
cloudkms.cryptoKeyVersions.viewPublicKey
-
cloudkms.locations.get
-
cloudkms.locations.list
-
resourcemanager.projects.get
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Recupera una chiave pubblica
Per scaricare la chiave pubblica di una versione della chiave asimmetrica attivata:
Console
Nella console Google Cloud, vai alla pagina Gestione delle chiavi.
Fai clic sul nome del keyring contenente la chiave asimmetrica per cui vuoi recuperare la chiave pubblica.
Fai clic sul nome della chiave per cui vuoi recuperare la chiave pubblica.
Nella riga corrispondente alla versione della chiave per cui vuoi recuperare la chiave pubblica, fai clic su Visualizza altro
.Fai clic su Ottieni chiave pubblica.
La richiesta mostra la chiave pubblica. Puoi copiare la chiave pubblica negli appunti. Per scaricare la chiave pubblica, fai clic su Scarica.
Se non vedi l'opzione Ottieni chiave pubblica, verifica quanto segue:
- La chiave è una chiave asimmetrica.
- La versione della chiave è abilitata.
- Hai l'autorizzazione
cloudkms.cryptoKeyVersions.viewPublicKey
.
Il nome file di una chiave pubblica scaricato dalla console Google Cloud ha il seguente formato:
KEY_RING-KEY_NAME-KEY_VERSION.pub
Ogni parte del nome file è separata da un trattino, ad esempio
ringname-keyname-version.pub
gcloud CLI
Per utilizzare Cloud KMS dalla riga di comando, devi prima installare o eseguire l'upgrade all'ultima versione di Google Cloud CLI.
gcloud kms keys versions get-public-key KEY_VERSION> \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --output-file OUTPUT_FILE_PATH
Sostituisci quanto segue:
KEY_VERSION
: numero della versione della chiave.KEY_NAME
: il nome della chiave.KEY_RING
: il nome del keyring che contiene la chiave.LOCATION
: la posizione di Cloud KMS del keyring.OUTPUT_FILE_PATH
: il percorso in cui vuoi salvare il file della chiave pubblica, ad esempiopublic-key.pub
.
Per informazioni su tutti i flag e i possibili valori, esegui il comando con il flag --help
.
C#
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo C# e installare l'SDK C# di Cloud KMS.
Go
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Go e installare l'SDK Go di Cloud KMS.
Java
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Java e installare l'SDK Java di Cloud KMS.
Node.js
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Node.js e installare l'SDK Node.js di Cloud KMS.
PHP
Per eseguire questo codice, devi prima imparare a utilizzare PHP in Google Cloud e installare l'SDK PHP di Cloud KMS.
Python
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Python e installare l'SDK Python di Cloud KMS.
Ruby
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Ruby e installare l'SDK Ruby di Cloud KMS.
API
In questi esempi viene usato curl come client HTTP per dimostrare l'utilizzo dell'API. Per saperne di più sul controllo dell'accesso, consulta Accesso all'API Cloud KMS.
Recupera la chiave pubblica chiamando il metodo CryptoKeyVersions.getPublicKey.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_NAME/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION/publicKey" \ --request "GET" \ --header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_NAME
: il nome del progetto che contiene il keyring.LOCATION
: la posizione di Cloud KMS del keyring.KEY_RING
: il nome del keyring che contiene la chiave.KEY_NAME
: il nome della chiave.KEY_VERSION
: numero della versione della chiave.
L'output dovrebbe essere simile al seguente:
{ "pem": "-----BEGIN PUBLIC KEY-----\nQ29uZ3JhdHVsYXRpb25zLCB5b3UndmUgZGlzY292ZX JlZCB0aGF0IHRoaXMgaXNuJ3QgYWN0dWFsbHkgYSBwdWJsaWMga2V5ISBIYXZlIGEgbmlj ZSBkYXkgOik=\n-----END PUBLIC KEY-----\n", "algorithm": "ALGORITHM", "pemCrc32c": "2561089887", "name": "projects/PROJECT_NAME/locations/LOCATION/keyRings/ KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/ KEY_VERSION", "protectionLevel": "SOFTWARE" }