Rotazione manuale delle chiavi root
Puoi ruotare le tue chiavi rootA symmetric wrapping key that is used for encrypting and decrypting other keys that are stored in a data service. su richiesta utilizzando IBM Cloud® Hyper Protect Crypto Services.
Quando esegui la rotazione della tua chiave root, ne abbrevi la durata e limiti la quantità di informazioni da essa protetta.
Per saperne di più sul modo in cui la rotazione delle chiavi ti aiuta a soddisfare gli standard del settore e le prassi ottimali crittografiche, vedi Rotazione delle chiavi.
Rotazione delle chiavi root nell'IU
Se preferisci ruotare le chiavi root utilizzando un'interfaccia grafica, puoi utilizzare l'interfaccia utente.
Dopo aver creato o importato le tue chiavi root esistenti nel servizio, completa la seguente procedura per eseguire la rotazione di una chiave:
-
Vai a Menù >Elenco delle risorse per visualizzare un elenco delle tue risorse.
-
Dal tuo elenco risorse IBM Cloud, seleziona la tua istanza di cui è stato eseguito il provisioning di Hyper Protect Crypto Services.
-
Sul Chiavi KMS pagina, utilizzare il file Chiavi tabella per sfogliare le chiavi del tuo servizio.
-
Selezionare la chiave che si desidera ruotare e fare clic su Azioni icona
per aprire un elenco di opzioni per la chiave.
-
Dal menu opzioni, fare clic su Ruota tasto.
Se inizialmente hai fornito il materiale della chiave per la chiave, specifica il nuovo materiale della chiave codificato base64 che vuoi archiviare e gestire nel servizio. Assicurati che il materiale della chiave soddisfi i seguenti requisiti:
- Deve essere 128, 192 o 256 bit.
- I byte di dati, ad esempio 32 byte per 256 bit, devo essere codificati utilizzando la codifica base64.
-
Fare clic su Ruota tasto per confermare.
Rotazione delle chiavi root con l'API
Puoi ruotare una tonalità fondamentale creando a POST chiamata al seguente endpoint.
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/rotate
-
Richiama le tue credenziali del servizio e di autenticazione per utilizzare le chiavi nel servizio.
-
Copia l'ID della chiave root di cui desideri eseguire la rotazione.
Puoi trovare l'ID per una chiave nella tua istanza del servizio richiamando un elenco delle tue chiavi o accedendo all'IU.
-
Sostituisci la chiave con il nuovo materiale della chiave immettendo il seguente comando cURL.
curl -X POST \ 'https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/rotate' \ -H 'accept: application/vnd.ibm.kms.key_action+json' \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \ -H "x-kms-key-ring: <key_ring_ID>" \ -H 'content-type: application/vnd.ibm.kms.key_action+json' \ -d '{ "payload": "<key_material>" }'Sostituisci le variabili nella richiesta di esempio in base alla seguente tabella.
Tabella 2. Descrive le variabili necessarie per ruotare una chiave specificata in Hyper Protect Crypto Services Variabile Descrizione regionObbligatorio. L'abbreviazione della regione, come us-southoau-syd, che rappresenta l'area geografica in cui si trova la tua istanza del servizio Hyper Protect Crypto Services. Per ulteriori informazioni, vedere Endpoint del servizio regionale.portObbligatorio. Il numero di porta dell'endpoint API. key_IDObbligatorio. L'identificativo univoco per la chiave root di cui desideri eseguire la rotazione. IAM_tokenObbligatorio. Il tuo token di accesso IBM Cloud. Includere l'intero contenuto del file IAMtoken, compreso il valore al portatore, nel filecURL richiesta. Per ulteriori informazioni, vedere Recupero di un token di accesso.instance_IDObbligatorio. L'identificativo univoco che viene assegnato alla tua istanza del servizio Hyper Protect Crypto Services. Per ulteriori informazioni, vedere Recupero di un ID istanza. key_ring_IDFacoltativo. L'identificativo univoco del keyring a cui appartiene la chiave. Se non specificato, Hyper Protect Crypto Services ricercherà la chiave in ogni key ring associato all'istanza specificata. Pertanto, si consiglia di specificare l'ID key ring per una richiesta più ottimizzata. Nota: l'ID key ring delle chiavi create senza un'intestazione
x-kms-key-ringè: default. Per ulteriori informazioni, consultare Gestione dei file di chiavi.key_materialFacoltativo. Il nuovobase64 il materiale della chiave codificata che desideri archiviare e gestire nel servizio. Il valore è obbligatorio se hai inizialmente importato il materiale della chiave quando hai aggiunto la chiave al servizio.
Per ruotare una chiave inizialmente generata daHyper Protect Crypto Services, ometti il
payloadattributo e passa un corpo entità della richiesta vuoto. Per ruotare una chiave importata, fornire un materiale della chiave che soddisfi i seguenti requisiti:- La chiave deve essere 128, 192 o 256 bit.
- I byte di dati, ad esempio 32 byte per 256 bit, devo essere codificati utilizzando la codifica base64.
Una richiesta di rotazione eseguita correttamente restituisce una risposta HTTP
204 No Content, che indica che la tua chiave root è stata sostituita da nuovo materiale della chiave. -
Facoltativo: verifica che sia stata eseguita la rotazione della chiave eseguendo la seguente chiamata per sfogliare le chiavi nella tua istanza del servizio Hyper Protect Crypto Services.
curl -X GET \ https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys \ -H 'accept: application/vnd.ibm.collection+json' \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \Riesamina il valore
lastRotateDatenel corpo-entità della risposta per ispezionare la data e l'ora dell'ultima rotazione della tua chiave.{ "metadata": { "collectionType": "application/vnd.ibm.kms.key+json", "collectionTotal": 1 }, "resources": [ { "type": "application/vnd.ibm.kms.key+json", "id": "02fd6835-6001-4482-a892-13bd2085f75d", "name": "test-root-key", "state": 1, "extractable": false, "crn": "crn:v1:bluemix:public:hs-crypto:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d", "imported": false, "creationDate": "2020-03-12T03:50:12Z", "createdBy": "...", "algorithmType": "AES", "algorithmMetadata": { "bitLength": "256", "mode": "CBC_PAD" }, "algorithmBitSize": 256, "algorithmMode": "CBC_PAD", "lastUpdateDate": "2020-03-12T03:50:12Z", "lastRotateDate": "2020-03-12T03:49:01Z", "keyVersion": { "id": "2291e4ae-a14c-4af9-88f0-27c0cb2739e2", "creationDate": "2020-03-12T03:50:12Z" }, "dualAuthDelete": { "enabled": false }, "deleted": false } ] }L'attributo
keyVersioncontiene le informazioni di identificazione che descrivono l'ultima versione della chiave root.È anche possibile elencare le versioni disponibili per la chiave utilizzando la API del servizio di gestione chiavi Hyper Protect Crypto Services. Per ulteriori informazioni, consultare Visualizzazione delle versioni delle chiave.
Utilizzo di un token di importazione per ruotare una chiave
Se hai inizialmente importato una chiave root utilizzando un token di importazione, puoi ruotare la chiave effettuando una chiamata POST al seguente endpoint.
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/rotate
-
Richiama le tue credenziali di autenticazione per lavorare con le chiavi nel servizio.
Per ruotare una chiave, è necessario che ti venga assegnato un_ scrittore_ O_ Manager_ policy di accesso per l'istanza o la chiave. Per informazioni su come si mappano i ruoli IAM alle azioni del servizio Hyper Protect Crypto Services, consulta Ruoli di accesso al servizio.
-
Recupera l'ID della chiave che desideri ruotare.
È possibile recuperare l'ID per una chiave specifica creando un file
GET /v2/keysrichiesta o visualizzando le chiavi nell'interfaccia utente. -
Utilizza il token di importazione per crittografare il materiale della chiave che vuoi utilizzare per ruotare la chiave esistente.
Per informazioni su come utilizzare un token di importazione, consulta Esercitazione: creazione e importazione di chiavi di codifica.
-
Sostituisci la chiave esistente con il nuovo materiale della chiave immettendo il seguente comando cURL.
curl -X POST \ https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/rotate \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \ -H 'accept: application/vnd.ibm.kms.key_action+json' \ -H 'content-type: application/vnd.ibm.kms.key_action+json' \ -d '{ "type": "application/vnd.ibm.kms.key+json", "name": "<key_alias>", "description": "<key_description>", "extractable": <key_type>, "payload": "<encrypted_key>", "encryptionAlgorithm": "RSAES_OAEP_SHA_1", "encryptedNonce": "<encrypted_nonce>", "iv": "<iv>" }'Sostituisci le variabili nella richiesta di esempio in base alla seguente tabella.
Tabella 3. Descrive le variabili necessarie per ripristinare le chiavi con laHyper Protect Crypto Services Variabile Descrizione regionObbligatorio. L'abbreviazione della regione, come us-southoau-syd, che rappresenta l'area geografica in cui si trova la tua istanza del servizio Hyper Protect Crypto Services. Per ulteriori informazioni, vedere Endpoint del servizio regionale.portObbligatorio. Il numero di porta dell'endpoint API. key_IDObbligatorio. L'identificatore univoco della chiave che desideri ruotare. IAM_tokenObbligatorio. Il tuo token di accesso IBM Cloud. Includere l'intero contenuto del file IAMtoken, compreso il valore al portatore, nel filecURL richiesta. Per ulteriori informazioni, vedere Recupero di un token di accesso.instance_IDObbligatorio. L'identificativo univoco che viene assegnato alla tua istanza del servizio Hyper Protect Crypto Services. Per ulteriori informazioni, vedere Recupero di un ID istanza. key_aliasObbligatorio. 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. key_descriptionUna descrizione estesa della tua chiave. Per proteggere la tua privacy, non memorizzare i tuoi dati personali come metadati per la tua chiave. encrypted_keyObbligatorio. Il nuovo materiale della chiave codificato dal token di importazione. Il valore deve esserebase64 codificato. Assicurarsi che il materiale della chiave soddisfi i seguenti requisiti: - La chiave deve essere 128, 192 o 256 bit.
- I byte di dati, ad esempio 32 byte per 256 bit, devo essere codificati utilizzando la codifica base64.
Per ulteriori informazioni, vedi Esercitazione: creazione e importazione di chiavi di crittografia.
key_typeUn valore booleano che determina se il materiale della chiave può lasciare il servizio. Quando imposti il extractableattribuire afalse, il servizio designa la chiave come chiave root che puoi utilizzarewrapOunwrapoperazioni.encrypted_nonceObbligatorio. Il nonce crittografato AES -GCM che garantisce che i bit inviati come parte di una richiesta siano esattamente gli stessi che riceviamo. Il nonce convalida la chiave che si sta ripristinando. Per ulteriori informazioni, vedi Esercitazione: creazione e importazione di chiavi di crittografia. ivObbligatorio. Il vettore di inizializzazione (IV) generato dall'AES-GCM algoritmo quando crittografi un nonce. Questo valore viene utilizzato per decodificare la chiave per l'archiviazione nel sistema Hyper Protect Crypto Services. Per ulteriori informazioni, vedi Esercitazione: creazione e importazione di chiavi di crittografia. Una richiesta di rotazione riuscita restituisce un HTTP
204 No Contentrisposta, che indica che la chiave root è stata sostituita dal nuovo materiale della chiave. -
Facoltativo: verifica che la chiave sia stata ruotata richiamando i dettagli sulla chiave.
curl -X GET \ https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_id>/metadata \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' -H 'accept: application/vnd.ibm.kms.key+json'Rivedi il
lastRotateDateEkeyVersionvalori nel corpo dell'entità della risposta per controllare la data e l'ora dell'ultima rotazione della chiave.Puoi anche elencare le versioni disponibili per la chiave utilizzando l'API Hyper Protect Crypto Services. Per ulteriori informazioni, vedi Visualizzazione delle versioni delle chiavi.
Operazioni successive
- Dopo aver ruotato una chiave root, diventa disponibile il nuovo materiale della chiave crittografica per proteggere le chiavi di crittografia dei dati (DEK) associate alla chiave root. Scopri come crittografare o rieseguire il wrapping delle tue DEKS senza esporre le chiavi nel loro formato di testo semplice, vedi Rewrapping delle chiavi.
- Per ulteriori informazioni su come la crittografia envelope ti aiuta a controllare la sicurezza dei dati inattivi nel cloud, vedi Protezione dei dati con la crittografia envelope.
- Per saperne di più sulla gestione programmatica delle tue chiavi,controlla ilHyper Protect Crypto Services Documento di riferimento API del servizio di gestione delle chiavi.