Importazione delle chiavi root
È possibile utilizzare IBM® Key Protect for IBM Cloud® per proteggere e gestire le chiavi root esistenti importandole.
Le chiavi root sono chiavi simmetriche per l'impacchettamento della chiave che vengono utilizzate per proteggere la sicurezza dei dati crittografati nel cloud. Per ulteriori informazioni sull'importazione delle chiavi root in Key Protect, vedi Utilizzo delle tue chiavi di crittografia sul cloud.
Pianifica in anticipo l'importazione delle chiavi controllando le tue opzioni per la creazione e la crittografia del materiale della chiave. Per aggiungere sicurezza, puoi abilitare l'importazione sicura del materiale della chiave utilizzando un token di importazione per crittografare il tuo materiale della chiave prima di portarlo nel cloud.
Importazione delle chiavi root tramite la console
Dopo aver creato un'istanza del servizio, completa la seguente procedura per importare una chiave con la console IBM Cloud.
Se si abilitano le impostazioni di doppia autorizzazione per l'istanza di Key Protect, è importante tenere presente che, per eliminare le chiavi aggiunte al servizio, è necessaria l'autorizzazione di due utenti.
-
Vai su Menu > Elenco risorse per visualizzare l'elenco delle tue risorse.
-
Dal tuo elenco risorse IBM Cloud, seleziona la tua istanza di cui è stato eseguito il provisioning di Key Protect.
-
Per importare una chiave, fare clic su Aggiungi e selezionare la finestra Importa chiave.
Specifica i dettagli della chiave:
| Impostazione | Descrizione |
|---|---|
| Tipo di chiave | Il tipo di chiave che desideri gestire in Key Protect. Selezionare il pulsante " Chiave radice ". |
| Nome | Un alias leggibile dall'utente che consente di identificare facilmente la propria chiave. La lunghezza deve essere compresa tra 2 e 90 caratteri (inclusi). Per proteggere la tua privacy, assicurati che il nome della chiave non contenga informazioni d'identificazione personale, come il tuo nome o la tua posizione. Tenere presente che i nomi chiave non devono essere univoci. |
| Materiale della chiave | Il materiale della chiave " base64-encoded ", ad esempio una chiave di avvolgimento esistente, che si desidera archiviare e gestire nel servizio. Per ulteriori informazioni, consulta Base64 encoding your key material. Assicurarsi che il materiale della chiave sia lungo 16, 24 o 32 byte e corrisponda a 128, 192 o 256 bit di lunghezza. La chiave deve essere anche base64-encoded. |
| Descrizione chiave | Facoltativo. Le descrizioni sono un modo utile per aggiungere informazioni su una chiave (ad esempio, una frase che ne descrive lo scopo) in un modo che non è possibile fare utilizzando un alias o il nome. Questa descrizione deve contenere almeno due caratteri e non più di 240 e non può essere modificata in un secondo momento. Per tutelare la tua privacy, ti preghiamo di non utilizzare dati personali, come il tuo nome o la tua posizione, come descrizione della tua chiave. |
| Alias chiave | Facoltativo. Gli alias chiave sono modi per descrivere una chiave che consente di identificarli e raggrupparli oltre i limiti di un nome di visualizzazione. Le chiavi possono avere fino a cinque alias. |
| Key ring | Facoltativo. I Keyring sono raggruppamenti di chiavi che consentono a tali raggruppamenti di essere gestiti in modo indipendente, se necessario. Ogni chiave
deve far parte di un portachiavi. Se non viene selezionato alcun keyring, le chiavi vengono inserite nel keyring default. Nota: per posizionare la chiave che stai creando in un key ring, devi avere il ruolo di Gestore su tale key ring. Per ulteriori informazioni sui ruoli, consulta Gestione dell'accesso utente. |
Una volta completata la compilazione dei dettagli della chiave, clicca su “Aggiungi” per confermare.
Se sei il responsabile di un portachiavi specifico, puoi aggiungere una chiave direttamente dal pannello " Portachiavi". Dal menu delle azioni del portachiavi (⋯), fare clic su “Aggiungi nuova chiave ”. Si apre la stessa finestra che appare quando si fa clic su “Aggiungi” nella pagina “Chiavi”, ma il campo “Portachiavi” è già compilato con il nome del portachiavi selezionato.
Se avete bisogno di importare e gestire le chiavi di accesso in modo coerente tra gli account o gli ambienti, potete automatizzare questa operazione con il modulo Key Protect Key. Per una configurazione completa che prevede anche l'istanza Key Protect e i portachiavi, consultare il sito Key Protect modulo. Per una panoramica, vedere Terraform IBM Modules.
Importazione delle chiavi root con l'API
Importa le chiavi simmetriche in Key Protect effettuando una chiamata POST al seguente endpoint.
https://<region>.kms.cloud.ibm.com/api/v2/keys
-
Richiama le tue credenziali del servizio e di autenticazione per utilizzare le chiavi nel servizio.
-
Richiama l'API Key Protect con il seguente comando
curl.$ curl -X POST \ "https://<region>.kms.cloud.ibm.com/api/v2/keys" \ -H "authorization: Bearer <IAM_token>" \ -H "bluemix-instance: <instance_ID>" \ -H "content-type: application/vnd.ibm.kms.key+json" \ -d '{ "metadata": { "collectionType": "application/vnd.ibm.kms.key+json", "collectionTotal": 1 }, "resources": [ { "type": "application/vnd.ibm.kms.key+json", "name": "<key_name>", "aliases": [alias_list], "description": "<key_description>", "expirationDate": "<expiration_date>", "payload": "<key_material>", "extractable": <key_type> } ] }'Sostituisci le variabili nella richiesta di esempio in base alla seguente tabella.
| Variabile | Descrizione |
|---|---|
| regione | Obbligatorio. L'abbreviazione della regione, ad esempio us-south o eu-gb, che indica l'area geografica in cui risiede la tua istanza di Key Protect.Per ulteriori informazioni, consultare la sezione " Endpoint di servizio regionali ". |
| Token IAM | Obbligatorio. Il tuo token di accesso IBM Cloud. Includi l'intero contenuto del token IAM, compreso il valore Bearer, nella richiesta curl. Per ulteriori informazioni, consulta la sezione " Ottenere un token di accesso ". |
| instance_id | Obbligatorio. L'identificatore univoco assegnato alla tua istanza del servizio Key Protect. Per ulteriori informazioni, consultare la sezione " Come recuperare l'ID di un'istanza ". |
| correlazione_ID | L'identificativo univoco utilizzato per tracciare e correlare le transazioni. |
| preferenza di restituzione | Un'intestazione che modifica il comportamento del server per le operazioni POST e DELETE. Quando si imposta la variabile return_preference su return=minimal, il servizio restituisce solo i metadati della
chiave, quali il nome della chiave e il valore dell'ID, nel corpo dell'entità della risposta. Quando si imposta la variabile su return=representation, il servizio restituisce sia il materiale della chiave che i metadati della chiave. |
| key_name | Obbligatorio. Un nome leggibile dall'utente e univoco per una facile identificazione della tua chiave. Per proteggere la tua privacy, non memorizzare i tuoi dati personali come metadati per la tua chiave. |
| elenco_alias | Facoltativo. Uno o più alias univoci e leggibili assegnati alla chiave. Importante: per proteggere la tua privacy, non memorizzare i tuoi dati personali come metadati per la tua chiave. Ciascun alias deve essere alfanumerico, sensibile al maiuscolo / minuscolo e non può contenere spazi o caratteri speciali diversi da - o _. L'alias non può essere un UUID e non deve essere un nome riservato Key Protect: allowed_ip, key, keys, metadata, policy, policy. registrazione, registrazioni, anello, anelli, ruotare, avvolgere, scartare, riavvolgere, versione, versioni. |
| descrizione_chiave | Facoltativo. Una descrizione estesa della tua chiave. Per proteggere la tua privacy, non memorizzare i tuoi dati personali come metadati per la tua chiave. |
| data_scadenza | Facoltativo. La data e l'ora in cui la chiave scade nel sistema, in formato RFC 3339 (YYYY-MM-DD HH:MM:SS.SS, ad esempio 2019-10-12T07:20:50.52Z). La chiave passerà allo stato disattivato entro
un'ora dalla data di scadenza della chiave. Se l'attributo expirationDate viene omesso, la chiave non scade. |
| materiale_chiave | Obbligatorio. Il materiale della chiave " base64-encoded ", una chiave di avvolgimento esistente, che si desidera archiviare e gestire nel servizio. Per ulteriori informazioni, consulta Base64 encoding your key material. Verificare che il materiale della chiave soddisfi i seguenti requisiti: una chiave standard può avere una dimensione massima di 7.500 byte. La chiave deve essere base64-encoded. |
| tipo_chiave | Un valore booleano che determina se il materiale della chiave può lasciare il servizio. Quando si imposta l'attributo "extractable" su " false", il servizio identifica la chiave come chiave radice,
utilizzabile per le operazioni di "wrap" o "unwrap". |
Per proteggere la riservatezza dei tuoi dati personali, evita di immettere informazioni d'identificazione personale, come il tuo nome o la tua posizione, quando aggiungi le chiavi al servizio.
Una risposta POST api/v2/keys corretta restituisce il valore dell'ID per la tua chiave, insieme ad altri metadati. L'ID è un identificativo univoco che viene assegnato alla tua chiave e utilizzato per le seguenti chiamate all'API
Key Protect.
Facoltativo: verificare che la chiave sia stata aggiunta eseguendo la seguente chiamata per visualizzare le chiavi presenti nell'istanza di Key Protect.
$ curl -X GET \
"https://<region>.kms.cloud.ibm.com/api/v2/keys" \
-H "accept: application/vnd.ibm.collection+json" \
-H "authorization: Bearer <IAM_token>" \
-H "bluemix-instance: <instance_ID>"
Materiale della tua chiave Base64-encoding
Quando si importa una chiave root esistente, è necessario includere il materiale della chiave crittografata che si desidera archiviare e gestire nel servizio.
Utilizzo di OpenSSL per codificare il materiale della chiave esistente
Utilizzare questo processo per codificare il contenuto di un materiale della chiave in un file.
-
Scaricare e installare OpenSSL.
-
Base64-encode la stringa del materiale della chiave immettendo il seguente comando:
openssl base64 -in <infile> -out <outfile>Sostituisci le variabili nella richiesta di esempio in base alla seguente tabella.
| Variabile | Descrizione |
|---|---|
| file di input | Il nome del file in cui si trova la stringa del materiale della chiave. Assicurarsi che la chiave sia lunga 16, 24 o 32 byte, corrispondenti a 128, 192 o 256 bit di lunghezza. La chiave deve essere base64-encoded. |
| outfile | Il nome del file in cui verrà creato il tuo materiale della chiave base64-encoded una volta eseguito il comando. |
Se si desidera visualizzare il materiale di base64 direttamente nella riga di comando anziché in un file, digitare openssl enc -base64 <<< '<key_material_string>', dove key_material_string è l'input del materiale
della chiave importata.
Utilizzo di OpenSSL per creare e codificare il nuovo materiale della chiave
Utilizzare questo processo per creare un materiale chiave base64-encoded casuale con una lunghezza byte specifica. Si consiglia di utilizzare 32 byte (256 bit).
-
Scaricare e installare OpenSSL.
-
Base64-encode la stringa del materiale della chiave immettendo il seguente comando:
openssl rand -base64 <byte_length>Sostituisci la variabile nella richiesta di esempio in base alla seguente tabella.
| Variabile | Descrizione |
|---|---|
| lunghezza_byte | La lunghezza della chiave, misurata in byte. Le lunghezze di byte accettabili sono 16, 24 o 32 byte, corrispondenti a 128, 192 o 256 bit di lunghezza. La chiave deve essere base64-encoded. |
Esempi di creazione materiale chiave
-
openssl rand -base64 16genererà un materiale chiave a 128 bit. -
openssl rand -base64 24genererà un materiale chiave a 192 bit. -
openssl rand -base64 32genererà un materiale chiave a 256 bit.
Operazioni successive
-
Per ulteriori informazioni sulla protezione delle chiavi con la crittografia envelope, controlla Impacchettamento delle chiavi.
-
Per ulteriori informazioni sulla gestione programmatica delle chiavi, consulta la documentazione di riferimento dell'API " Key Protect ".