Standardschlüssel importieren
Sie können Ihre vorhandenen Verschlüsselungsschlüssel mithilfe der IBM Cloud -Konsole hinzufügen.
Sie können Ihre vorhandenen Verschlüsselungsschlüssel über das Programm mit der Key Protect -API hinzufügen.
Standardschlüssel über die Konsole importieren
Nach dem Erstellen einer Instanz dieses Service müssen Sie die folgenden Schritte ausführen, um einen vorhandenen Schlüssel mit der IBM Cloud-Konsole zu importieren.
Beachten Sie bei der Aktivierung der Einstellungen für doppelte Autorisierung für Ihre Key Protect-Instanz, dass zum Löschen der Schlüssel, die Sie zum Service hinzufügen, eine Autorisierung durch zwei Benutzer erforderlich ist.
-
Rufen Sie Menü > Ressourcenliste auf, um eine Liste Ihrer Ressourcen anzuzeigen.
-
Wählen Sie in der IBM Cloud-Ressourcenliste die bereitgestellte Instanz von Key Protect aus.
-
Wenn Sie einen neuen Schlüssel importieren möchten, klicken Sie auf Schlüssel hinzufügen und wählen Sie das Fenster Eigenen Schlüssel importieren aus.
Geben Sie die Schlüsseldetails an:
Einstellung | Beschreibung |
---|---|
Schlüsseltyp | Der Schlüsseltyp, den Sie in Key Protect verwalten möchten. Klicken Sie auf die Schaltfläche Standardschlüssel . |
Name | Ein lesbarer Aliasname für die einfache Identifizierung Ihres Schlüssels. Länge muss innerhalb von 2 bis 90 Zeichen (einschließlich) liegen. Stellen Sie aus Datenschutzgründen sicher, dass der Schlüsselname keine personenbezogenen Daten (PII) wie den Namen oder den Standort enthält. Beachten Sie, dass Schlüsselnamen nicht eindeutig sein müssen. |
Schlüsselmaterial | Die Schlüsselinformationen mit Base64-Codierung (z. B. ein vorhandener Key-Wrapping-Schlüssel), die im Service gespeichert und verwaltet werden sollen. Weitere Informationen finden Sie unter Base64-Codierung für Ihre Schlüsselinformationen. Stellen Sie sicher, dass das Schlüsselmaterial 16, 24 oder 32 Byte lang ist und mit 128, 192 oder 256 Bit in der Länge übereinstimmt. Der Schlüssel muss auch base64-codiert sein. |
Schlüsselaliasname | Optional. Schlüsselaliasnamen sind Möglichkeiten, einen Schlüssel zu beschreiben, mit dem sie identifiziert und über die Begrenzungen eines Anzeigenamens gruppiert werden können. Schlüssel können bis zu fünf Aliasnamen haben. |
Schlüsselring | Optional. Bei Schlüsselringen handelt es sich um Gruppierungen von Schlüsseln, die es ermöglichen, dass diese Gruppierungen bei Bedarf unabhängig verwaltet
werden. Jeder Schlüssel muss Teil eines Schlüsselrings sein. Wenn kein Schlüsselring ausgewählt ist, werden Schlüssel in den default Schlüsselring gestellt. Beachten Sie, dass Sie die Manager-Rolle für diesen Schlüsselring
haben müssen, um den Schlüssel, den Sie erstellen, in einem Schlüsselring zu platzieren. Weitere Informationen zu Rollen finden Sie im Abschnitt Benutzerzugriff verwalten. |
Geben Sie die Details zum Schlüssel ein und klicken Sie anschließend zum Bestätigen auf Schlüssel importieren.
Wenn Sie wissen, in welchem Schlüsselring ein Schlüssel platziert werden soll, und Sie ein Manager dieses Schlüsselrings sind, können Sie auch zu der Anzeige Schlüsselringe navigieren, die ⋯ auswählen und auf klicken Schlüssel zum Schlüsselring hinzufügen klicken. Dadurch wird dieselbe Anzeige geöffnet, die Sie sehen, indem Sie auf der Seite Schlüssel auf Hinzufügen klicken, wobei die Variable Schlüsselringe mit dem Namen des Schlüsselrings ausgefüllt wird.
Standardschlüssel importieren
Importieren Sie einen Standardschlüssel, indem Sie einen POST
-Aufruf an den folgenden Endpunkt absetzen:
https://<region>.kms.cloud.ibm.com/api/v2/keys
-
Rufen Sie die API Key Protect mit dem Befehl
curl
auf.$ 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> } ] }'
Ersetzen Sie die Variablen in der Beispielanforderung entsprechend der folgenden Tabelle.
Variabel | Beschreibung |
---|---|
Bereich | Erforderlich. Die Abkürzung der Region, z. B. us-south oder eu-gb , die das geografische Gebiet angibt, in dem sich Ihre Key Protect befindetFor more information, see Regionale Dienstendpunkte. |
IAM_token | Erforderlich. Ihr IBM Cloud-Zugriffstoken. Fügen Sie den vollständigen Inhalt des IAM-Tokens, einschließlich des Träger-Wertes, in die Curl-Anforderung ein. For more information, see Abrufen eines Zugangstokens. |
instance_id | Erforderlich. Die eindeutige ID, die Ihrer Key Protect-Serviceinstanz zugewiesen ist. For more information, see Abrufen einer Instanz-ID. |
correlation_ID | Die eindeutige ID, die zum Überwachen und Korrelieren von Transaktionen verwendet wird. |
return_preference | Ein Header, der das Serververhalten für POST-und DELETE-Operationen ändert. Wenn Sie die Variable "return_vorgabe" auf "return=minimal" setzen, gibt der Service nur die Schlüsselmetadaten zurück, z. B. den Schlüsselnamen und den ID-Wert, in der Antwortentitätseinheit. Wenn Sie die Variable auf "return=Vertretung" setzen, gibt der Service sowohl das Schlüsselmaterial als auch die Schlüsselmetadaten zurück. |
key_name | Erforderlich. 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. |
alias_list | Optional: Ein oder mehrere eindeutige, von Menschen lesbare Aliasnamen, die Ihrem Schlüssel zugewiesen werden Wichtig: Aus Datenschutzgründen dürfen keine personenbezogenen Daten als Metadaten für den Schlüssel gespeichert werden. Each alias must be alphanumeric, case sensitive, and cannot contain spaces or special characters other than - or _. The alias cannot be a UUID and must not be a Key Protect reserved name: allowed_ip, key, keys, metadata, policy, policies. registration, registrations, ring, rings, rotate, wrap, unwrap, rewrap, version, versions. |
key_description | Optional. Eine erweiterte Beschreibung Ihres Schlüssels. Aus Datenschutzgründen dürfen keine personenbezogenen Daten als Metadaten für den Schlüssel gespeichert werden. |
expiration_date | Optional. Das Datum und die Uhrzeit, zu der der Schlüssel im System abläuft, im Format RFC 3339 (JJJJ-MM-TT HH:MM: SS.SS, z. B. 2019-10-12T07:20:50.52Z). Der Schlüssel wird innerhalb einer Stunde nach Erreichen des Ablaufdatums inaktiviert. Wenn das Attribut "expirationDate" weggelassen wird, läuft der Schlüssel nicht ab. |
key_material | Erforderlich. Das base64-codierte Schlüsselmaterial, wie z. B. ein symmetrischer Schlüssel, den Sie im Service verwalten möchten. Weitere Informationen finden Sie unter Base64 Ihres Schlüsselmaterials Stellen Sie sicher, dass die Schlüsselinformationen die folgenden Anforderungen erfüllen: Ein Standardschlüssel kann bis zu 7.500Byte groß sein. Der Schlüssel muss base64-codiert sein. |
key_type | Ein boolescher Wert, der bestimmt, ob die Schlüsselinformationen den Service verlassen dürfen. When you set the extractable attribute to true , the service designates the key as a standard key that you can store in your
apps or services. |
Vermeiden Sie zum Schutz der Vertraulichkeit Ihrer personenbezogenen Daten die Eingabe von personenbezogenen Informationen (PII) beim Hinzufügen von Schlüsseln zum Service. Hierzu gehören beispielsweise Namen oder Standortangaben. Weitere Beispiele für PII finden Sie in Abschnitt 2.2 der NIST-Sonderveröffentlichung 800-122.
Mit der erfolgreichen Antwort POST api/v2/keys
werden der ID-Wert für Ihren Schlüssel sowie andere Metadaten zurückgegeben. Die ID ist eine eindeutige ID, die Ihrem Schlüssel zugeordnet ist und für nachfolgende Aufrufe an die Key
Protect-API verfügbar.
Optional: Überprüfen Sie den Import von Standardschlüsseln
Sie können überprüfen, ob ein Standardschlüssel importiert wurde, indem Sie eine Liste der Listenschlüssel ausgeben:
$ 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>"
Dabei ist <instance_ID>
der Name Ihrer Instanz und Ihr <IAM_token>
ist Ihr IAM-Token.
Base64-Codierung für Ihre Schlüsselinformationen
Beim Importieren eines vorhandenen Standardschlüssels müssen die verschlüsselten Schlüsselinformationen angegeben werden, die im Service gespeichert und verwaltet werden sollen.
Vorhandene Schlüsselinformationen mit OpenSSL verschlüsseln
Um Ihr Schlüsselmaterial zu codieren, müssen Sie zuerst OpenSSLherunterladen und installieren.
Nachdem OpenSSL heruntergeladen und installiert wurde, gibt es zwei empfohlene Befehle für die Codierung des Schlüsselmaterials. Beide Methoden sind insofern äquivalent, als sie eine Zeichenfolge konvertieren, unabhängig davon, ob < key_material_string>
oder
```sh {: pre}
openssl base64 -in <infile> -out <outfile>
```
Replace the variables in the example request according to the following table.
Variabel | Beschreibung |
---|---|
infile | Der Name der Binärdatei, in der sich Ihr Schlüsselmaterial befindet Stellen Sie sicher, dass die Datei nicht größer als 7.500 Byte ist. |
Ausgabedatei | Der Name der Datei, in der Ihre base64-codierten Schlüsselinformationen nach der Ausführung des Befehls erstellt werden. |
Wenn Sie das base64-Material direkt in der Befehlszeile und nicht in einer Datei ausgeben möchten, führen Sie den Befehlopenssl enc -base64 <<< '<key_material_string>'
aus, wobei 'key_material_stringis' die Eingabe
des Schlüsselmaterials für Ihren importierten Schlüssel ist.
Wenn Sie Schlüsselinformationen zur Base64-Codierung verwenden möchten, die sich nicht in einer Datei befinden, können Sie Folgendes ausgeben:
```sh {: pre}
echo -n <password> | base64
```
Where "password" is the key material you want to use.
Um zusätzliche Zeichen zu vermeiden, z. B. eine zusätzliche neue Zeile, ist es ein bewährtes Verfahren, die Zeichenfolge base64 in die Zwischenablage zu kopieren, insbesondere wenn die Zeichenfolge base64 in der Konsole veröffentlicht wird.
OpenSSL zum Erstellen und Codieren der neuen Schlüsselinformationen verwenden
Verwenden Sie diesen Prozess, um ein zufälliges base64-verschlüsseltes-Schlüsselmaterial mit einer bestimmten Bytelänge zu erstellen. 32 Byte (256 Bit) werden empfohlen.
Sie würden ein 16-, 24- oder 32-Byte-Schlüsselmaterial zur Verwendung als Standardschlüssel anlegen, wenn der Standardschlüssel die gleichen Eigenschaften wie ein Rootschlüssel haben soll. Ein Standardschlüssel ist ein Schlüssel, der den Dienst verlassen kann. Standardschlüssel werden häufig in Ihren Apps und Services verwendet.
-
Herunterladen und installieren OpenSSL
-
Verschlüsseln Sie die Schlüsselinformationen mit der Base64-Codierung, indem Sie den folgenden Befehl ausführen:
openssl rand -base64 <byte_length>
Ersetzen Sie die Variable in der Beispielanforderung anhand der Angaben in der folgenden Tabelle.
Variabel | Beschreibung |
---|---|
byte_length | Die Länge des Schlüssels in Byte. Zulässige Bytelängen sind 16, 24 oder 32 Byte, das entspricht einer Länge von 128, 192 bzw. 256 Bit. Der Schlüssel muss base64-codiert sein. |
Beispiele für die Erstellung von Schlüsselinformationen
-
openssl rand -base64 16
generiert Schlüsselinformationen mit einer Länge von 128 Bit. -
openssl rand -base64 24
generiert Schlüsselinformationen mit einer Länge von 192 Bit. -
openssl rand -base64 32
generiert Schlüsselinformationen mit einer Länge von 256 Bit.
Nächste Schritte
- Um mehr über die programmatische Verwaltung Ihrer Schlüssel zu erfahren, lesen Sie die Key Protect API-Referenzdokument.