Lernprogramm: Verschlüsselungsschlüssel erstellen und importieren

Import-Tokens werden von Key Protect Dedicated nicht unterstützt.

In diesem Abschnitt erfahren Sie, wie Sie Verschlüsselungsschlüssel unter Verwendung von Key Protect erstellen, verschlüsseln und in die Cloud importieren.

Als Sicherheitsfachmann für Ihre Organisation suchen Sie immer nach Wegen, um die Sicherheit Ihrer bei Ruhedaten auf der Cloud zu verbessern.

Um die strengen Anforderungen an die Datengovernance und die Verordnungen für Prüfvorschriften einzuhalten, sollten Ihre Apps in einen Schlüsselmanagementservice integriert werden, der eine differenzierte Zugriffssteuerung für Verschlüsselungsschlüssel sowie Auditprotokollfunktionen und flexible Optionen zum Hochladen der Verschlüsselungsschlüsseln bietet, die Sie lokal generieren.

Mit Key Protect können Sie Verschlüsselungsschlüssel unter Verwendung Ihres internen Schlüsselmanagementsystems erstellen und diese Schlüssel anschließend für die Verwendung in der Cloud hochladen.

Dabei stehen verschiedene Optionen zum Hochladen von Schlüsseln zur Auswahl, die sich an Ihren aktuellen Sicherheitsanforderungen orientieren. Beim Verwalten des Lebenszyklus von Verschlüsselungsschlüsseln steuern Sie den Zugriff auf Ressourcen mithilfe von Cloud Identity and Access Management und überwachen die API-Aktivität für den Service mit IBM Cloud Logs.

In diesem Lernprogramm verwenden Sie ein Importtoken zum Hochladen eines Verschlüsselungsschlüssels in Key Protect. Weitere Informationen zu Ihren Optionen für den Import von Schlüsseln in Key Protect finden Sie unter Import von Schlüsselinformationen planen.

Informationen zum Importieren eines Schlüssels ohne ein Importtoken finden Sie unter Rootschlüssel importieren

Ziele

In diesem Lernprogramm werden Sie durch das Erstellen und sichere Importieren von Verschlüsselungsschlüsseln in den Key Protect-Service geführt. Es ist für Benutzer gedacht, die neu bei Key Protect sind, aber vielleicht schon eine gewisse Vertrautheit mit Schlüsselmanagementsystemen haben. Für das Durcharbeiten der folgenden Schritte sind ungefähr 20 Minuten erforderlich.

  • Key Protect-Befehlszeilenschnittstelle einrichten

  • Key Protect-Serviceinstanz für Start des Schlüsselimports vorbereiten

  • Schlüssel mit dem OpenSSL-Verschlüsselungstoolkit erstellen und verschlüsseln

  • Verschlüsselten Schlüssel in Ihre Key Protect-Instanz gemacht wurden

Durch dieses Lernprogramm entstehen keine Gebühren für Ihr IBM Cloud- Konto.

Vorbereitende Schritte

Für den Einstieg benötigen Sie die IBM Cloud-CLI, damit Sie mit Services interagieren können, die Sie bereitstellen in IBM Cloud. Außerdem müssen die Pakete openssl und jq lokal auf Ihrem Computer installiert sein.

  1. Erstellen Sie ein IBM Cloud-Konto.

  2. Laden Sie die IBM Cloud-Basis-CLI für Ihr Betriebssystem.

  3. Konfigurieren und Sie das Key Protect CLI-Plug-in, um mit der Verwaltung von Schlüsseln zu beginnen. Wenn Sie die ersten beiden zuvor aufgelisteten Schritte bereits ausgeführt haben, beginnen Sie mit Schritt 3 unter dem Link, bevor Sie zu diesem Lernprogramm zurückkehren.

  4. Laden Sie die Kryptografie-Bibliothek „ OpenSSL “ herunter und installieren Sie sie.

    Sie können openssl-Befehle verwenden, um Verschlüsselungsschlüssel auf Ihrem lokalen Computer zu generieren, wenn Sie Key Protect zum ersten Mal ausprobieren. Für dieses Lernprogramm ist OpenSSL Version 1.0.2r oder höher erforderlich.

    Wenn Sie einen Mac verwenden, können Sie „ OpenSSL “ über Homebrew herunterladen. Führen Sie den Befehl brew install openssl aus, wenn Sie das Paket zum ersten Mal installieren, oder führen Sie den Befehl brew upgrade openssl aus, um ein Upgrade Ihres vorhandenen Pakets auf die neueste Version durchzuführen.

  5. Laden Sie jq herunter und installieren Sie es.

    jq unterstützt Sie beim Ausschneiden von JSON-Daten. Sie verwenden jq in diesem Lernprogramm, um bestimmte Daten zu erfassen, die zurückgegeben werden, wenn Sie die Key Protect-API verfügbar.

Schritt 1. Eine „ Key Protect “-Instanz erstellen

Nachdem Sie ein IBM Cloud-Konto eingerichtet haben, führen Sie die folgenden Schritte aus, um eine Key Protect- Instanz.

  1. Führen Sie in einem Terminalfenster den folgenden Befehl aus, um sich bei IBM Cloud mit der BefehlszeilenschnittstelleIBM Cloud.

    ibmcloud login
    

    Wenn die Anmeldung fehlschlägt, führen Sie den Befehl ibmcloud login --sso aus, um es erneut zu versuchen. Der Parameter --sso ist erforderlich, wenn Sie sich mit einer föderierten ID anmelden. Wenn diese Option verwendet wird, rufen Sie den Link auf, der in der Ausgabe der Befehlszeilenschnittstelle aufgelistet ist, um einen einmalig verwendbaren Kenncode zu generieren.

  2. Wählen Sie das Konto und die Ressourcengruppe aus, für die Sie eine Key Protect-Instanz verhindert.

    In diesem Lernprogramm interagieren Sie mit der Region 'Washington DC'. Wenn Sie an einer anderen Region angemeldet sind, stellen Sie sicher, dass Sie durch Ausführen des folgenden Befehls 'Washington DC' als Ihre Zielregion festlegen.

    ibmcloud target -r us-east
    
  3. Stellen Sie eine Instanz von Key Protect in diesem Konto und in dieser Ressourcengruppe bereit.

    Geben Sie zuerst die Ressourcengruppe für die Instanz an, indem Sie Folgendes ausgeben:

    ibmcloud target -g <your-resource-group>
    

    Beispiel: ibmcloud target -g Default

    Anschließend können Sie die Instanz erstellen, indem Sie Folgendes ausgeben:

    ibmcloud resource service-instance-create "import-keys-demo" kms tiered-pricing us-east
    

    Für dieses Lernprogramm fallen keine Gebühren zu Lasten Ihres IBM Cloud-Kontos an.

  4. Optional: Stellen Sie sicher, dass die Key Protect-Instanz erfolgreich erstellt wurde, indem Sie die verfügbaren Key Protect-Instanzen auflisten.

    ibmcloud resource service-instances
    

    Erfolgreich! Sie haben jetzt die Key Protect-Instanz festgelegt, in der Sie Verschlüsselungsschlüssel speichern und verwalten können. Fahren Sie mit dem nächsten Schritt fort.

Schritt 2. Richten Sie die Key Protect-API ein

Da Sie nun eine Instanz von Key Protect bereitgestellt haben, können Sie mit der Verwendung der API beginnen.

Von Key Protect werden eine grafische Benutzerschnittstelle und eine REST-API zum Erstellen, Verfolgen und Verwalten von Verschlüsselungsschlüsseln bereitgestellt. Der Key Protect-API erfordert ein gültiges IBM Cloud IAM-Token und eine Instanz-ID für die Authentifizierung beim Service.

In diesem Schritt verwenden Sie die IBM Cloud-CLI, um die Authentifizierungsnachweise zu erfassen, die Sie für die Interaktion mit Key Protect-APIs benötigen. Wenn Sie Ihre Berechtigungsnachweise für spätere Schritte abrufen und vorbereiten möchten, legen Sie die Berechtigungsnachweise auch als Umgebungsvariablen in Ihrem Terminal fest.

  1. Legen Sie in Ihrem Terminalfenster den Key Protect-API-Endpunkt als Umgebungsvariable fest.

    export KP_API_URL=https://<region>.kms.cloud.ibm.com
    
  2. Generieren Sie ein IBM Cloud-Zugriffstoken mit dem Key Protect-CLI-Plug-in und legen Sie es als Umgebungsvariable fest.

    Die Umgebungsvariable sollte mit dem Autorisierungstyp beginnen, Bearer. Der CLI-Befehl wird, wie im Beispiel gezeigt, automatisch den richtigen Typ enthalten.

    export ACCESS_TOKEN=`ibmcloud iam oauth-tokens | grep IAM | cut -d \: -f 2 | sed 's/^ *//'`
    

    IBM Cloud-Zugriffstoken sind für einen Zeitraum von 1 Stunde gültig, können jedoch bei Bedarf neu generiert werden. Führen Sie zum Generieren eines neuen Zugriffstokens den Befehl ibmcloud iam oauth-tokens-Befehl ausführen. Weitere Informationen zum Abrufen von IBM Cloud-Zugriffstoken finden Sie unter Zugriffstoken abrufen.

  3. Rufen Sie die ID ab, die Ihrer Key Protect-Instanz zugeordnet ist und legen Sie dann den Wert als Umgebungsvariable fest.

    export INSTANCE_ID=`ibmcloud resource service-instance "import-keys-demo" --output json | jq -r '.[].guid'`
    
  4. Optional: Überprüfen Sie durch Ausgeben der Umgebungsvariablen in der Terminalanzeige, ob die Umgebungsvariablen korrekt festgelegt wurden.

    $ echo $KP_API_URL
    https://us-east.kms.cloud.ibm.com
    $ echo $ACCESS_TOKEN
    Bearer eyJraWQiOiIyM...
    $ echo $INSTANCE_ID
    c1cf624b-6bed-4d4d-bd54-8e2534258a88
    

    Erfolgreich! Sie haben jetzt die Serviceberechtigungsnachweise festgelegt, die Sie für die Authentifizierung an der Key Protect-API verwenden müssen. Fahren Sie mit dem nächsten Schritt fort.

Schritt 3. Importtoken erstellen

Mit Ihren Serviceberechtigungsnachweisen können Sie die Interaktion mit den Key Protect-APIs zum Erstellen und Bereitstellen Ihrer Verschlüsselungsschlüssel für den Service beginnen.

Im folgenden Schritt erstellen Sie ein Importtoken für Ihre Key Protect-Instanz. Indem Sie ein Import-Token auf der Grundlage einer von Ihnen festgelegten Richtlinie erstellen, sorgen Sie für zusätzliche Sicherheit für Ihren Verschlüsselungsschlüssel, während dieser an den Dienst übertragen wird.

  1. Wechseln Sie in Ihrer Terminalsitzung in das neue Verzeichnis key-protect-test.

    mkdir key-protect-test && cd key-protect-test
    

    Sie verwenden dieses Verzeichnis, um Dateien für spätere Schritte zu speichern.

  2. Erstellen Sie ein Importtoken für Ihre Key Protect-Instanz und speichern Sie dann die Antwort in einer JSON-Datei.

    $ curl -X POST \
        "$KP_API_URL/api/v2/import_token" \
        -H "accept: application/vnd.ibm.collection+json" \
        -H "authorization: $ACCESS_TOKEN" \
        -H "bluemix-instance: $INSTANCE_ID" \
        -H "content-type: application/json" \
        -d '{
                "expiration": 1200,
                "maxAllowedRetrievals": 1
            }' > createImportTokenResponse.json
    

    Im Anforderungshauptteil können Sie beispielsweise eine Richtlinie für das Importtoken angeben, die die Verwendung basierend auf der Zeit und der Nutzungszahl begrenzt. In diesem Beispiel legen Sie den Ablaufzeitraum für das Importtoken auf 1200 Sekunden (20 Minuten) fest und lassen nur einen Abruf dieses Tokens innerhalb des Ablaufzeitraums zu.

  3. Zeigen Sie Details für das Importtoken an.

    jq '.' createImportTokenResponse.json
    

    In der Ausgabe werden die Metadaten angezeigt, die dem Importtoken zugeordnet sind, wie zum Beispiel das Erstellungsdatum und die Richtliniendetails. Der folgende Ausschnitt zeigt eine Beispielausgabe.

    {
        "creationDate": "2019-04-08T16:58:29Z",
        "expirationDate": "2019-04-08T17:18:29Z",
        "maxAllowedRetrievals": 1,
        "remainingRetrievals": 1
    }
    

Schritt 4. Importtoken abrufen

In den vorherigen Schritten haben Sie ein Importtoken erstellt und die Metadaten geprüft, die dem Token zugeordnet sind.

{
    "creationDate": "2019-04-08T16:58:29Z",
    "expirationDate": "2019-04-08T17:18:29Z",
    "maxAllowedRetrievals": 1,
    "remainingRetrievals": 1
}

In diesem Schritt rufen Sie den öffentlichen Verschlüsselungsschlüssel und den Nonce-Wert ab, die dem Importtoken zugeordnet sind. Sie benötigen den öffentlichen Schlüssel, um Daten in einem späteren Schritt zu verschlüsseln, und die Nonce, um Ihre sichere Importanforderung an den Key Protect-Service zu verifizieren.

Gehen Sie wie folgt vor, um den Inhalt des Importtokens abzurufen:

  1. Rufen Sie das Importtoken, das Sie im vorherigen Schritt generiert haben, ab und speichern Sie die Antwort in einer JSON-Datei.

    $ curl -X GET \
        "$KP_API_URL/api/v2/import_token" \
        -H "accept: application/vnd.ibm.collection+json" \
        -H "authorization: $ACCESS_TOKEN" \
        -H "bluemix-instance: $INSTANCE_ID" > getImportTokenResponse.json
    
  2. Optional: Untersuchen Sie den Inhalt des Importtokens.

    jq '.' getImportTokenResponse.json
    

    Die Ausgabe zeigt detaillierte Informationen zu dem Importtoken an. Der folgende Ausschnitt zeigt eine Beispielausgabe mit abgeschnittenen Werten.

    {
        "creationDate": "2019-04-08T16:58:29Z",
        "expirationDate": "2019-04-08T17:18:29Z",
        "maxAllowedRetrievals": 1,
        "remainingRetrievals": 0,
        "payload": "Rm91ciBzY29yZSBhbmQgc2V2ZW4geWVhcnMgYWdv...",
        "nonce": "8zJE9pKVdXVe/nLb"
    }
    

    Der Nutzdatenwert payload stellt den öffentlichen Schlüssel dar, der dem Importtoken zugeordnet ist. Dieser Wert liegt in Base64-Codierung vor. Der Wert für nonce wird verwendet, um den Ursprung einer Anforderung an den Service zu überprüfen. Sie müssen diesen Wert verschlüsseln und bereitstellen, wenn Sie den Verschlüsselungsschlüssel in einem späteren Schritt importieren.

  3. Decodieren Sie den öffentlichen Schlüssel und speichern Sie ihn in einer Datei mit dem Namen PublicKey.pem.

    jq -r '.payload' getImportTokenResponse.json | base64 --decode -o PublicKey.pem
    

    Der öffentliche Schlüssel wird nun im PEM-Format auf Ihren Computer heruntergeladen. Fahren Sie mit dem nächsten Schritt fort.

Schritt 5. Verschlüsselungsschlüssel erstellen

Mit Key Protect können Sie die Sicherheitsvorteile von Bring Your Own Key (BYOK) aktivieren, indem Sie Ihre eigenen Schlüssel für die Verwendung in IBM Cloud erstellen und hochladen.

Im folgenden Schritt erstellen Sie auf Ihrem lokalen Computer einen symmetrischen 256-Bit-AES-Schlüssel.

In diesem Lernprogramm wird das Toolkit für die OpenSSL-Verschlüsselung zum Generieren eines pseudozufälligen Schlüssels (Pseudo-Random Key) verwendet; es kann für Sie aber sinnvoll sein, verschiedene Optionen zu testen, um abhängig von Ihren Sicherheitsanforderungen stärkere Schlüssel zu generieren. Sie könnten zum Beispiel das interne Schlüsselmanagementsystem Ihrer Organisation, das durch ein lokales Hardwaresicherheitsmodul (HSM) gestützt wird, verwenden, um Schlüssel zu erstellen und zu exportieren.

  1. Führen Sie in einem Terminalfenster den folgenden openssl-Befehl aus, um einen 256-Bit-Verschlüsselungsschlüssel zu erstellen.

    openssl rand 32 > PlainTextKey.bin
    

    Erfolgreich! Ihr Verschlüsselungsschlüssel ist nun in einer Datei namens PlainTextKey.bin. Fahren Sie mit dem nächsten Schritt fort.

Schritt 6. Nonce verschlüsseln

Um sicherzustellen, dass die Bits, die wir empfangen, genau mit den Bits identisch sind, die Sie als Teil einer Anforderung senden; Key Protect erfordert Nonce-Verifizierung, wenn Sie den symmetrischen Schlüssel in den Service hochladen.

In der Kryptografie dient eine Nonce als Sitzungstoken, an dem die Ursprünglichkeit einer Anforderung geprüft wird, um einen Schutz gegen böswillige Angriffe und unberechtigte Aufrufe einzurichten. Durch Verwendung derselben Nonce, die von Key Protect verteilt wurde, können Sie sicherstellen, dass Ihre Anforderung zum Hochladen eines Schlüssels gültig ist. Der Nonce-Wert muss mit demselben Schlüssel verschlüsselt werden, den Sie auch in den Service importieren wollen.

Gehen Sie wie folgt vor, um den Nonce-Wert zu verschlüsseln:

  1. Verschlüsseln Sie den Schlüssel, den Sie im vorherigen Schritt generiert haben, und legen Sie den verschlüsselten Wert als Umgebungsvariable fest.

    KEY_MATERIAL=$(base64 PlainTextKey.bin)
    
  2. Erfassen Sie den Nonce-Wert, den Sie in Schritt 4 abgerufen haben.

    NONCE=$(jq -r '.nonce' getImportTokenResponse.json)
    
  3. Führen Sie Folgendes aus, um den Nonce-Wert mit dem Verschlüsselungsschlüssel zu verschlüsseln, den Sie in Schritt 5 generiert haben. Speichern Sie die Antwort anschließend in einer Datei mit dem Namen EncryptedValues.json.

    ibmcloud kp import-token nonce-encrypt -k $KEY_MATERIAL -n $NONCE --output json > EncryptedValues.json
    
  4. Optional: Überprüfen Sie den Inhalt der JSON-Datei wie dargestellt mit jq.

    jq '.' EncryptedValues.json
    

    In der Ausgabe werden die Werte angezeigt, die Sie für den nächsten Schritt angeben müssen. Der folgende Ausschnitt zeigt eine Beispielausgabe mit abgeschnittenen Werten.

    {
        "encryptedNonce": "DVy/Dbk37X8gSVwRA5U6vrHdWQy8T2ej+riIVw==",
        "iv": "puQrzDX7gU1TcTTx"
    }
    

    Der Wert encryptedNonce stellt den ursprünglichen Nonce-Wert dar, der durch den Verschlüsselungsschlüssel, den Sie mit OpenSSL generiert haben, in ein Wrapping verborgen (bzw. verschlüsselt) wird. Der iv Der Wert ist der Initialisierungsvektor (IV), der vom AES- GCM-Algorithmus erzeugt wird und später benötigt wird, damit Key Protect die Nonce erfolgreich entschlüsseln kann.

Schritt 7. Schlüssel verschlüsseln

Verwenden Sie als Nächstes den öffentlichen Schlüssel, der von Key Protect verteilt wurde, zum Verschlüsseln des symmetrischen Schlüssels, den Sie mit OpenSSL generiert haben.

  1. Verschlüsseln Sie den generierten Schlüssel mithilfe des öffentlichen Schlüssels, den Sie in Schritt 4 abgerufen haben.

    openssl pkeyutl \
        -encrypt \
        -pubin \
        -keyform PEM \
        -inkey PublicKey.pem \
        -pkeyopt rsa_padding_mode:oaep \
        -pkeyopt rsa_oaep_md:sha256 \
        -in PlainTextKey.bin \
        -out EncryptedKey.bin
    

    Wenn Ihnen beim Ausführen des Befehls openssl Befehl unter Mac OS X müssen Sie möglicherweise sicherstellen, dass „ OpenSSL “ ordnungsgemäß für Ihre Umgebung konfiguriert ist. Wenn Sie OpenSSL mithilfe von Homebrew installiert haben, führen Sie den Befehl brew update und anschließend den Befehl brew install openssl aus, um die neueste Version abzurufen. Führen Sie dann Folgendes aus: export PATH="/usr/local/opt/openssl/bin:$PATH" >> ~/.bash_profile um ein symbolisches Link für das Paket zu erstellen. Öffnen Sie eine neue Terminalsitzung und führen Sie anschließend den folgenden Befehl aus: which openssl && openssl version um zu überprüfen, ob die neueste Version von OpenSSL unter dem Pfad /usr/local/ verfügbar ist. Wenn weiterhin Fehler auftreten, stellen Sie sicher, dass Sie nur die Parameter verwenden, die in diesem Beispiel aufgeführt werden.

    Erfolgreich! Ihr verschlüsselter Schlüssel wurde nun in einer Datei namens EncryptedKey.bin. Sie sind bereit, Ihren verschlüsselten Schlüssel hochzuladen in Key Protect. Fahren Sie mit dem nächsten Schritt fort.

Schritt 8. Schlüssel importieren

Sie können den verschlüsselten Schlüssel jetzt mit der Key Protect-API verfügbar.

Gehen Sie wie folgt vor, um den Schlüssel zu importieren:

  1. Stellen Sie die Werte für den verschlüsselten Schlüssel, die verschlüsselte generierte Zufallszahl (Nonce) und den Initialisierungsvektor (IV) zusammen.

    ENCRYPTED_KEY=$(openssl enc -base64 -A -in EncryptedKey.bin)
    
    ENCRYPTED_NONCE=$(jq -r '.encryptedNonce' EncryptedValues.json)
    
    IV=$(jq -r '.iv' EncryptedValues.json)
    
  2. Speichern Sie den verschlüsselten Schlüssel in Ihrer Key Protect-Instanz, indem Sie den folgenden curl-Befehl ausführen.

    $ curl -X POST \
        "$KP_API_URL/api/v2/keys" \
        -H "accept: application/vnd.ibm.collection+json" \
        -H "authorization: $ACCESS_TOKEN" \
        -H "bluemix-instance: $INSTANCE_ID" \
        -H "content-type: application/json" \
        -d '{
                "metadata": {
                    "collectionType": "application/vnd.ibm.kms.key+json",
                    "collectionTotal": 1
                },
                "resources": [
                    {
                        "name": "encrypted-root-key",
                        "type": "application/vnd.ibm.kms.key+json",
                        "payload": "'"$ENCRYPTED_KEY"'",
                        "extractable": false,
                        "encryptionAlgorithm": "RSAES_OAEP_SHA_256",
                        "encryptedNonce": "'"$ENCRYPTED_NONCE"'",
                        "iv": "'"$IV"'"
                    }
                ]
            }' > createRootKeyResponse.json
    

    Geben Sie im Anforderungshauptteil den Verschlüsselungsschlüssel an, den Sie im vorherigen Schritt vorbereitet haben. Sie können auch den verschlüsselten Nonce-Wert und den verschlüsselten IV-Wert angeben, die zur Überprüfung der Anforderung erforderlich sind. Schließlich wird der Wert für extractable auf false Legt Ihren neuen Schlüssel als Stammschlüssel im Dienst fest, den Sie zur Umschlagverschlüsselung verwenden können.

    Key Protect empfängt Ihr verschlüsseltes Paket über das Protokoll TLS 1.2 oder 1.3. Innerhalb eines Hardwaresicherheitsmoduls verwendet das System den privaten Schlüssel, um den symmetrischen Schlüssel zu entschlüsseln. Das System verwendet schließlich diesen symmetrischen Schlüssel und den IV-Wert, um den Nonce-Wert zu entschlüsseln und die Anforderung zu überprüfen.

    Wenn die API-Anforderung mit einem Fehler aufgrund eines abgelaufenen Importtokens fehlschlägt, kehren Sie zu Schritt 3 zurück, um ein neues Importtoken zu erstellen. Beachten Sie, dass Importtokens und die zugeordneten öffentlichen Schlüssel nach Maßgabe der Richtlinie ablaufen, die Sie bei der Erstellung angeben.

  3. Zeigen Sie die Details für den Verschlüsselungsschlüssel an.

    jq '.' createRootKeyResponse.json
    

    Der folgende Ausschnitt zeigt eine Beispielausgabe.

    {
        "metadata": {
            "collectionType": "application/vnd.ibm.kms.key+json",
            "collectionTotal": 1
        },
        "resources": [
            {
                "id": "02fd6835-6001-4482-a892-13bd2085f75d",
                "type": "application/vnd.ibm.kms.key+json",
                "name": "encrypted-root-key",
                "state": 1,
                "crn": "crn:v1:bluemix:public:kms:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d",
                "extractable": false,
                "imported": true
            }
        ]
    }
    

    Der id-Wert ist eine eindeutige ID, die Ihrem Schlüssel zugeordnet ist und für nachfolgende Aufrufe an die Key Protect-API verfügbar. Der auf '1' festgelegte state-Wert gibt an, dass sich Ihr Verschlüsselungsschlüssel jetzt im Schlüsselstatus Aktiv befindet. Der Wert für crn gibt den vollständigen, bereichsorientierten Pfad zu dem Schlüssel an, der angibt, wo sich die Ressource in IBM Cloud befindet. Und schließlich beschreiben die Werte für extractable und imported diese Ressource als Rootschlüssel, den Sie in den Service importiert haben.

  4. Optional: Navigieren Sie zum Key Protect-Dashboard zum Anzeigen und Verwalten Ihres Verschlüsselungsschlüssels.

    Das Bild zeigt die Key Protect-Dashboardansicht.

    Sie können die allgemeinen Merkmale Ihrer Schlüssel über die Seite für Anwendungsdetails untersuchen. Treffen Sie Ihre Auswahl in einer Liste von Optionen zur Verwaltung des Schlüssels aus, wie zum Beispiel Schlüssel wechseln oder Schlüssel löschen.

Schritt 9. Bereinigen

  1. Erfassen Sie die ID für den Verschlüsselungsschlüssel, den Sie im vorherigen Schritt importiert haben.

    ROOT_KEY_ID=$(jq -r '.resources[].id' createRootKeyResponse.json)
    
  2. Entfernen Sie den Verschlüsselungsschlüssel aus der Key Protect-Instanz verhindert.

    $ curl -X DELETE \
        "$KP_API_URL/api/v2/keys/$ROOT_KEY_ID" \
        -H "accept: application/vnd.ibm.collection+json" \
        -H "authorization: $ACCESS_TOKEN" \
        -H "bluemix-instance: $INSTANCE_ID" | jq .
    
  3. Entfernen Sie alle lokalen Dateien, die diesem Lernprogramm zugeordnet sind.

    rm *.json *.bin *.pem
    
  4. Löschen Sie das Testverzeichnis, das Sie für dieses Lernprogramm erstellt haben.

    cd .. && rm -r key-protect-test
    
  5. Optional: Entfernen Sie die Key Protect-Serviceinstanz.

    ibmcloud resource service-instance-delete import-keys-demo
    

    Wenn Sie weitere Testschlüssel in Ihrer Key Protect-Instanz erstellt haben, stellen Sie sicher, dass Sie alle Verschlüsselungsschlüssel aus Ihrer Instanz entfernen, bevor Sie die Instanz löschen oder die Einrichtung zurücknehmen.

Nächste Schritte

In diesem Lernprogramm haben Sie erfahren, wie Sie die Key Protect-API einrichten, einen Verschlüsselungsschlüssel erstellen und einen verschlüsselten Schlüssel sicher in Ihre Key Protect-Instanz verhindert.