Rootschlüssel manuell wechseln
Sie können Ihre GrundtonartenA symmetric wrapping key that is used for encrypting and decrypting other keys that are stored in a data service. auf Anfrage durchIBM Cloud®Hyper Protect Crypto Services.
Durch die Rotation des Rootschlüssels wird die Laufzeit des Schlüssels verkürzt und die Menge der durch den betreffenden Schlüssel geschützten Informationen wird begrenzt.
Informationen dazu, wie die Schlüsselrotation Sie bei der Einhaltung von Branchenstandards und bewährten Verfahren für die Verschlüsselung unterstützt, finden Sie unter Schlüsselrotation.
Rotierende Grundtonarten in der Benutzeroberfläche
Wenn Sie Ihre Root-Keys lieber mithilfe einer grafischen Benutzeroberfläche rotieren möchten, können Sie die Benutzeroberfläche verwenden.
Nach dem Erstellen oder Importieren der vorhandenen Rootschlüssel in den Service führen Sie die folgenden Schritte aus, um eine Schlüsselrotation durchzuführen:
-
Rufen Sie Menü > Ressourcenliste auf, um eine Liste Ihrer Ressourcen anzuzeigen.
-
Wählen Sie in Ihrer IBM Cloud-Ressourcenliste die bereitgestellte Instanz von Hyper Protect Crypto Services aus.
-
Verwenden Sie auf der Seite KMS-Schlüssel die Tabelle Schlüssel, um die Schlüssel in Ihrem Service zu durchsuchen.
-
Wählen Sie den Schlüssel aus, den Sie rotieren möchten, und klicken Sie auf das Symbol Aktionen
, um eine Liste mit Optionen für den Schlüssel anzuzeigen.
-
Klicken Sie im Auswahlmenü auf Schlüssel wechseln.
Wenn Sie das Schlüsselmaterial für den Schlüssel ursprünglich angegeben haben, geben Sie das neue base64-codierte Schlüsselmaterial an, das Sie im Service speichern und verwalten wollen. Stellen Sie sicher, dass die Schlüsselinformationen die folgenden Anforderungen erfüllen:
- Muss 128, 192 oder 256 Bit sein.
- Die Datenbyte, z. B. 32 Byte für 256 Bit, müssen mittels Base64-Codierung codiert werden.
-
Klicken Sie zur Bestätigung auf Schlüssel wechseln.
Rootschlüssel mit der API wechseln
Sie können einen Rootschlüssel wechseln, indem Sie einen POST-Aufruf an den folgenden Endpunkt absetzen.
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/rotate
-
Rufen Sie Ihre Service- und Authentifizierungsnachweise zur Arbeit mit den Schlüsseln im Service ab.
-
Kopieren Sie die ID des Rootschlüssels, den Sie wechseln wollen.
Sie finden die ID für einen Schlüssel in Ihrer Serviceinstanz wie folgt:Abrufen einer Liste Ihrer Schlüssel oder durch Zugriff auf die Benutzeroberfläche.
-
Ersetzen Sie den Schlüssel durch die neuen Schlüsselinformationen, indem Sie den folgenden cURL-Befehl ausführen.
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>" }'Ersetzen Sie die Variablen in der Beispielanforderung entsprechend der folgenden Tabelle.
Tabelle 2. Beschreibt die Variablen, die zum Rotieren eines angegebenen Schlüssels erforderlich sind inHyper Protect Crypto Services Variabel Beschreibung regionErforderlich. Die Regionsabkürzung, z. B. us-southoderau-syd, die das geografische Gebiet darstellt, in dem sich Ihre Hyper Protect Crypto Services-Serviceinstanz befindet. Weitere Informationen finden Sie unter Regionale Serviceendpunkte.portErforderlich. Die Portnummer des API-Endpunkts. key_IDErforderlich. Die eindeutige ID für den Rootschlüssel, für den eine Rotation durchgeführt werden soll. IAM_tokenErforderlich. Ihr IBM Cloud-Zugriffstoken. Nehmen Sie den vollständigen Inhalt des IAM-Tokens einschließlich des Werts für Bearer in die cURL-Anforderung auf. Weitere Informationen finden Sie unter Zugriffstoken abrufen.instance_IDErforderlich. Die eindeutige ID, die Ihrer Hyper Protect Crypto Services-Serviceinstanz zugewiesen ist. Weitere Informationen finden Sie unter Instanz-ID abrufen. key_ring_IDOptional. Die eindeutige ID des Schlüsselrings, zu dem der Schlüssel gehört. Wenn diese Option nicht angegeben wird, sucht Hyper Protect Crypto Services nach dem Schlüssel in jedem Schlüsselring, der der angegebenen Instanz zugeordnet ist. Daher wird empfohlen, die Schlüsselring-ID für eine optimierte Anforderung anzugeben. Hinweis: Die Schlüsselring-ID der Schlüssel, die ohne den Header
x-kms-key-ringerstellt werden, lautet wie folgt: default. Weitere Informationen finden Sie im Abschnitt zum Verwalten von Schlüsselringen.key_materialOptional. Die neuen, mit Base64-Codierung verschlüsselten Schlüsselinformationen, die im Service gespeichert und verwaltet werden sollen. Dieser Wert ist erforderlich, wenn die Schlüsselinformationen ursprünglich beim Hinzufügen des Schlüssels zum Service importiert wurden.
Um einen Schlüssel zu rotieren, der ursprünglich generiert wurde vonHyper Protect Crypto Services, lassen Sie die
payloadAttribut und übergeben Sie einen leeren Anforderungsentitätstext. Um einen importierten Schlüssel zu rotieren, stellen Sie ein Schlüsselmaterial bereit, das die folgenden Anforderungen erfüllt:- Der Schlüssel muss 128, 192 oder 256 Bit lang sein.
- Die Datenbyte, z. B. 32 Byte für 256 Bit, müssen mittels Base64-Codierung codiert werden.
Eine erfolgreiche Rotationsanforderung gibt die HTTP-Antwort
204 No Contentzurück, die bedeutet, dass der Rootschlüssel durch neue Schlüsselinformationen ersetzt wurde. -
Optional: Stellen Sie sicher, dass die Schlüsselrotation durchgeführt wurde, indem Sie den folgenden Aufruf ausführen, um die Schlüssel in der Hyper Protect Crypto Services-Serviceinstanz zu durchsuchen.
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>' \Überprüfen Sie den Wert für
lastRotateDateim Entitätshauptteil der Antwort, um das Datum und die Uhrzeit der letzten Rotation des Schlüssels zu prüfen.{ "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 } ] }Das Attribut
keyVersionenthält die Identifikationsinformationen, die die letzte Version des Rootschlüssels beschreiben.Sie können auch die Versionen auflisten, die für den Schlüssel verfügbar sind, indem Sie die Hyper Protect Crypto Services-Schlüsselmanagementservice-API verwendet haben. Weitere Informationen finden Sie unter Rootschlüsselversionen anzeigen.
Importtoken zum Wechseln eines Schlüssels verwenden
Wenn Sie zu Anfang einen Rootschlüssel mithilfe eines Importtokens importiert haben, können Sie den Schlüssel wechseln, indem Sie einen POST-Aufruf an den folgenden Endpunkt absetzen.
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/rotate
-
Rufen Sie Ihre Authentifizierungsnachweise für die Arbeit mit Schlüsseln im Service ab.
Um einen Schlüssel zu rotieren, muss Ihnen eine Writer- oder Manager-Zugriffsrichtlinie für die Instanz oder den Schlüssel zugewiesen sein. Informationen dazu, wie IAM-Rollen Hyper Protect Crypto Services-Serviceaktionen zugeordnet werden, finden Sie unter Servicezugriffsrollen.
-
Rufen Sie die ID des Schlüssels ab, den Sie wechseln wollen.
Sie können die ID für einen angegebenen Schlüssel abrufen, indem Sie
GET /v2/keysAnfrage oder indem Sie Ihre Schlüssel in der Benutzeroberfläche anzeigen. -
Verwenden Sie das Importtoken, um die Schlüsselinformationen zu verschlüsseln, die Sie zum Wechseln des vorhandenen Schlüssels verwenden wollen.
Informationen zur Verwendung eines Importtokens finden Sie im Lernprogramm: Verschlüsselungsschlüssel erstellen und importieren.
-
Ersetzen Sie den vorhandenen Schlüssel durch die neuen Schlüsselinformationen, indem Sie den folgenden cURL-Befehl ausführen.
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>" }'Ersetzen Sie die Variablen in der Beispielanforderung entsprechend der folgenden Tabelle.
Tabelle 3. Beschreibt die Variablen, die zum Wiederherstellen von Schlüsseln mit derHyper Protect Crypto Services-API erforderlich sind Variabel Beschreibung regionErforderlich. Die Regionsabkürzung, z. B. us-southoderau-syd, die das geografische Gebiet darstellt, in dem sich Ihre Hyper Protect Crypto Services-Serviceinstanz befindet. Weitere Informationen finden Sie unter Regionale Serviceendpunkte.portErforderlich. Die Portnummer des API-Endpunkts. key_IDErforderlich. Die eindeutige ID für den Schlüssel, den Sie wechseln wollen. IAM_tokenErforderlich. Ihr IBM Cloud-Zugriffstoken. Nehmen Sie den vollständigen Inhalt des IAM-Tokens einschließlich des Werts für Bearer in die cURL-Anforderung auf. Weitere Informationen finden Sie unter Zugriffstoken abrufen.instance_IDErforderlich. Die eindeutige ID, die Ihrer Hyper Protect Crypto Services-Serviceinstanz zugewiesen ist. Weitere Informationen finden Sie unter Instanz-ID abrufen. key_aliasErforderlich. Ein eindeutiger, lesbarer Name zur einfachen Identifikation Ihres Schlüssels. Aus Datenschutzgründen dürfen keine personenbezogenen Daten als Metadaten für den Schlüssel gespeichert werden. key_descriptionEine erweiterte Beschreibung des Schlüssels. Aus Datenschutzgründen dürfen keine personenbezogenen Daten als Metadaten für den Schlüssel gespeichert werden. encrypted_keyErforderlich. Die neuen Schlüsselinformationen, die durch das Importtoken verschlüsselt werden. Der Wert muss base64-codiert sein. Stellen Sie sicher, dass das Schlüsselmaterial die folgenden Voraussetzungen erfüllt: - Der Schlüssel muss 128, 192 oder 256 Bit lang sein
- Die Datenbyte, z. B. 32 Byte für 256 Bit, müssen mittels Base64-Codierung codiert werden.
Weitere Informationen finden Sie im Lernprogramm: Verschlüsselungsschlüssel erstellen und importieren.
key_typeEin boolescher Wert, der bestimmt, ob die Schlüsselinformationen den Service verlassen dürfen. Wenn Sie die extractablezuschreibenfalsekennzeichnet der Dienst den Schlüssel als Stammschlüssel, den Sie verwenden können fürwrapoderunwrapOperationen.encrypted_nonceErforderlich. Der mit dem AES-GCM-Algorithmus verschlüsselte Nonce-Wert, der sicherstellt, dass die Bit, die Sie als Teil einer Anforderung senden, genau mit denen übereinstimmen, die vom Service empfangen werden. Die Nonce validiert den Schlüssel, den Sie wiederherstellen. Weitere Informationen finden Sie unter Lernprogramm: Verschlüsselungsschlüssel erstellen und importieren. ivErforderlich. Der Initialisierungsvektor (IV), der durch den AES-GCM-Algorithmus generiert wird, wenn Sie eine Nonce verschlüsseln. Dieser Wert wird zum Decodieren des Schlüssels für das Speichern im Hyper Protect Crypto Services-System verwendet. Weitere Informationen finden Sie unter Lernprogramm: Verschlüsselungsschlüssel erstellen und importieren. Eine erfolgreiche Rotationsanforderung gibt die HTTP-Antwort
204 No Contentzurück, die bedeutet, dass der Rootschlüssel durch die neuen Schlüsselinformationen ersetzt wurde. -
Optional: Überprüfen Sie, ob der Schlüssel gewechselt wurde, indem Sie Details zu dem Schlüssel abrufen.
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'Überprüfen Sie die Werte für
lastRotateDateundkeyVersionim Entitätshauptteil der Antwort, um das Datum und die Uhrzeit der letzten Rotation des Schlüssels zu prüfen.Sie können die Versionen, die für den Schlüssel verfügbar sind, auch mithilfe der Hyper Protect Crypto Services-API auflisten. Weitere Informationen finden Sie unter Rootschlüsselversionen anzeigen.
Nächste Schritte
- Nachdem Sie einen Rootschlüssel gewechselt haben, werden neue Informationen zum Verschlüsselungsschlüssel verfügbar gemacht, die zum Schutz der Datenverschlüsselungsschlüssel (DEKs - Data Encryption Keys) verwendet werden, die dem Rootschlüssel zugeordnet sind. Erfahren Sie, wie Sie Ihr DEKS neu verschlüsseln oder neu verpacken können, ohne die Schlüssel im Klartext preiszugeben.Schlüssel neu verpacken.
- Informationen zur Nutzung der Envelope-Verschlüsselung zur Kontrolle der Sicherheit ruhender Daten in der Cloud finden Sie im Abschnitt zum Schutz von Daten anhand der Envelope-Verschlüsselung.
- Um mehr über die programmgesteuerte Verwaltung Ihrer Schlüssel zu erfahren,Besuche dieHyper Protect Crypto Services Schlüsselverwaltungsdienst-API-Referenzdokument.