Daten signieren und überprüfen

Der AO führt Signier- und Prüfvorgänge über Google Distributed Cloud (GDC) aus, die über einen gRPC-Client vom KMS getrennt sind.

Hinweise

Bevor Sie KMS-Vorgänge ausführen, müssen Sie kubectl für den Zugriff auf den Management API-Server konfigurieren und die erforderlichen Berechtigungen abrufen.

Serverzugriff für die Management API konfigurieren

Konfigurieren Sie kubectl für den Zugriff auf den Management API-Server:

  1. Falls noch nicht geschehen, rufen Sie eine kubeconfig-Datei für den Management API-Server mit der gdcloud-Befehlszeile (Command Line Interface, CLI) ab.
  2. Legen Sie die Umgebungsvariable MANAGEMENT_API_SERVER fest:

    export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIG
    

    Ersetzen Sie PATH_TO_KUBECONFIG durch den Pfad der generierten kubeconfig-Datei.

  3. Laden Sie die gcloud CLI herunter, installieren und konfigurieren Sie sie, falls noch nicht geschehen. Folgen Sie dazu der Übersicht über die gdcloud CLI.

Erforderliche Berechtigungen

Bitten Sie Ihren IAM-Administrator der Organisation, Ihnen die Rolle „KMS-Entwickler“ (kms-developer) für Ihr Projekt zuzuweisen, um die erforderlichen Berechtigungen zu erhalten.

Daten signieren

Verwenden Sie den Befehl gdcloud kms keys asymmetric-sign, um Daten zu signieren. Mit diesem Befehl wird eine digitale Signatur einer Eingabedatei mit dem Signing-Schlüssel erstellt und die base64-codierte Signatur gespeichert.

  • Um Ihre Daten zu signieren, übergeben Sie den Schlüsselnamen und Folgendes:

    gdcloud kms keys asymmetric-sign \
    namespaces/NAMESPACE/signingKeys/KEY_NAME \
    --input-file=INPUT_PATH \
    --signature-file=SIGNATURE_FILE
    

    Ersetzen Sie die folgenden Variablen:

    • NAMESPACE: der Projekt-Namespace, z. B. kms-test1.
    • KEY_NAME: Der Name des Schlüssels, der zum Signieren verwendet wird, z. B. key-1.
    • INPUT_PATH: Der Pfad der Eingabedatei, die signiert werden soll.
    • SIGNATURE_FILE: Der Pfad der Ausgabedatei, in der die base64-codierte Signatur gespeichert werden soll.

    Nach der Ausführung des Befehls wird eine Ausgabedatei angezeigt, die Sie im Flag --signature-file angegeben haben und die die base64-codierte Signatur enthält.

Daten prüfen

Nachdem Sie Ihre Daten signiert haben, überprüfen Sie die base64-digitale Signatur mit dem Befehl gdcloud kms keys asymmetric-verify. Mit diesem Befehl wird geprüft, ob die base64-codierte digitale Signatur, die Sie nach dem Ausführen des Befehls gdcloud kms keys asymmetric-sign erhalten, gültig ist.

  • Um die Signatur zu prüfen, übergeben Sie die Signaturdatei und Folgendes:

    gdcloud kms keys asymmetric-verify \
    namespaces/NAMESPACE/signingKeys/KEY_NAME \
      --input-file=INPUT_PATH \
      --signature-file=SIGNATURE_FILE
    

    Nach der Ausführung des Befehls wird bei Erfolg die Ausgabe Verification OK angezeigt. Wenn nicht, wird die Fehlerausgabe Verification Failure angezeigt.