Importazione delle chiavi standard
È possibile aggiungere le chiavi di crittografia esistenti utilizzando la console IBM Cloud.
È possibile aggiungere le chiavi di crittografia esistenti in modo programmatico con l'API Key Protect.
Importazione delle chiavi standard tramite la console
Dopo aver creato un'istanza del servizio, completare le seguenti operazioni per importare una chiave esistente utilizzando 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 nuova 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. Fai clic sul pulsante " Standard". |
| Nome | Un alias leggibile dall'utente che consente di identificare facilmente la propria chiave. La lunghezza deve essere all'interno di 2 - 90 caratteri (inclusivo). 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. Si noti che i nomi chiave non devono essere univmi. |
| 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, controllare Base64 codificando il tuo materiale chiave. Assicurarsi che il materiale chiave sia lungo 16, 24 o 32 bytes e corrisponde a 128, 192 o 256 di lunghezza. La chiave deve essere anche base64-encoded. |
| Alias chiave | Facoltativo. I tasti chiave sono modi per descrivere una chiave che permettono di identificare e raggruppare oltre i limiti di un nome di visualizzazione. Le chiavi possono avere fino a cinque alias. |
| Key ring | Facoltativo. Gli anelli chiave sono raggruppamenti di chiavi che consentono a quei raggruppamenti di essere gestiti in modo indipendente secondo necessità.
Ogni chiave deve far parte di un portachiavi. Se non viene selezionato alcun anello chiave, i tasti vengono inseriti nell'anello chiave default. Da notare che per posizionare la chiave che si sta creando in un anello chiave,
è necessario avere il ruolo Manager su quell' anello chiave. Per ulteriori informazioni sui ruoli, verificare 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 chiavi standard 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 standard
Importa una chiave standard 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.
-
Chiamare il Key Protect API 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" \ -H "correlation-id: <correlation_ID>" \ -H "prefer: <return_preference>" \ -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 si trova la tua istanza di Key Protect.Per ulteriori informazioni, consultare la sezione " Endpoint di servizio regionali ". |
| IAM_token | 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 ". |
| correl_ID | L'identificativo univoco utilizzato per tracciare e correlare le transazioni. |
| restitun_preferenze | 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 | Optional.Uno o più alias unici leggibili dall'uomo assegnati alla tua chiave. Importante: per proteggere la tua privacy, non memorizzare i tuoi dati personali come metadati per la tua chiave. Ogni alias deve essere alfanumerico, sensibile al caso e non può contenere spazi o caratteri speciali diversi - o _. L'alias non può essere un UUID e non deve essere un Key Protect nome riservato: allowed_ip, key, keys, metadati, policy, policy. registrazione, immatricolazioni, anelli, anelli, ruotare, avvolgere, scartare, riavvolgere, versione, versioni. |
| descrizione_chiave | Facoltativo. Una descrizione dettagliata della tua chiave. Per proteggere la tua privacy, non memorizzare i tuoi dati personali come metadati per la tua chiave. |
| scadenz_data | Facoltativo.La data e l'ora di scadenza della chiave nel sistema, nel 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 oltre la data
di scadenza della chiave. Se l'attributo expirationDate viene omesso, la chiave non scade. |
| materiale_chiave | Obbligatorio. L' base64-encoded, ad esempio una chiave simmetrica, che si desidera gestire nel servizio. Per ulteriori informazioni, controllare Base64 codificando il tuo materiale chiave. Assicurarsi che il materiale chiave soddisfi i seguenti requisiti: Una chiave standard può arrivare fino a 7.500 bytes di dimensione. 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 " true", il servizio identifica la chiave come chiave standard
che è possibile memorizzare nelle proprie app o nei propri servizi. |
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. Per ulteriori esempi di informazioni di identificazione personale (PII), consultare la sezione 2.2 della Pubblicazione speciale 800-122 del NIST.
Una risposta POST api/v2/keys corretta restituisce il valore dell'ID per la tua chiave, insieme ad altri metadati. L'ID è un identificatore univoco assegnato alla tua chiave e utilizzato per le successive chiamate al Key Protect
API.
Opzionale: Verifica importazione chiave standard
È possibile verificare che un tasto standard sia stato importato rilasciando una richiesta chiavi di elenco:
$ 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>"
Dove <instance_ID> è il nome della tua istanza e il tuo <IAM_token> è il tuo token IAM.
Base64-encoding il tuo materiale chiave
Quando si importa un tasto standard esistente, è necessario includere il materiale chiave crittografato che si desidera memorizzare e gestire al servizio.
Utilizzo di OpenSSL per codificare il materiale della chiave esistente
Per codificare il tuo materiale della chiave, prima devi scaricare e installare OpenSSL.
Una volta scaricato e installato OpenSSL, sono disponibili due comandi consigliati per la codifica del materiale della chiave. Entrambi i metodi sono equivalenti, in quanto convertono una stringa, sia che si tratti di <key_material_string>
o
```sh {: pre}
openssl base64 -in <infile> -out <outfile>
```
Replace the variables in the example request according to the following table.
| Variabile | Descrizione |
|---|---|
| file di input | Il nome del file binario in cui risiede la stringa del materiale della chiave. Assicurarsi che il file non sia più grande di 7.500 byte. |
| outfile | Il nome del file in cui verrà creato il tuo materiale 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, eseguire il comando openssl enc -base64 <<< '<key_material_string>', dove key_material_string è l'input del
materiale della chiave importata.
Se si desidera codificare in base 64 il materiale della chiave che non si trova in un file, è possibile emettere:
```sh {: pre}
echo -n <password> | base64
```
Where "password" is the key material you want to use.
Per evitare l'inserimento di caratteri aggiuntivi, ad esempio un'ulteriore riga nuova, è buona norma copiare l' base64 e negli appunti, soprattutto quando la stringa base64 deve essere inserita nella console.
Utilizzo di OpenSSL per creare e codificare il nuovo materiale della chiave
Utilizzare questo processo per creare un materiale chiave casuale base64-encoded con una lunghezza di byte specifica. 32 bytes (256) è consigliato.
Si creerebbe un materiale chiave da 16, 24 o 32 - byte, per l'utilizzo come chiave standard, se si desidera che la chiave standard abbia le stesse caratteristiche di un tasto di root. Una chiave standard è una che può lasciare il servizio. Le chiavi standard sono spesso utilizzate nelle vostre app e servizi.
-
Scarica e installa OpenSSL.
-
Base64-encode la tua stringa di materiale chiave eseguendo 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. Lunghezze di byte accettabili sono 16, 24 o 32 bytes, corrispondenti a 128, 192 o 256 di lunghezza. La chiave deve essere base64-encoded. |
Esempi 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 gestione programmatica delle chiavi, consulta la documentazione di riferimento dell'API " Key Protect ".