Auf dieser Seite erfahren Sie, wie Sie den öffentlichen Schlüsselabschnitt einer aktivierten Version eines asymmetrischen Schlüssels abrufen.
Der öffentliche Schlüssel liegt im PEM-Format (Privacy-enhanced Electronic Mail) vor. Weitere Informationen finden Sie in den Abschnitten General Considerations (Allgemeine Hinweise) und Textual Encoding of Subject Public Key Info (Textcodierung der Informationen zum öffentlichen Schlüssel des Antragstellers) von RFC 7468.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Cloud KMS CryptoKey Public Key Viewer (roles/cloudkms.publicKeyViewer
) für Ihren Schlüssel oder eine übergeordnete Ressource zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Abrufen eines öffentlichen Schlüssels benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Abrufen eines öffentlichen Schlüssels erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Abrufen eines öffentlichen Schlüssels erforderlich:
-
cloudkms.cryptoKeyVersions.viewPublicKey
-
cloudkms.locations.get
-
cloudkms.locations.list
-
resourcemanager.projects.get
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Öffentlichen Schlüssel abrufen
So laden Sie den öffentlichen Schlüssel für eine aktivierte asymmetrische Schlüsselversion herunter:
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, der den asymmetrischen Schlüssel enthält, für den Sie den öffentlichen Schlüssel abrufen möchten.
Klicken Sie auf den Namen des Schlüssels, für den Sie den öffentlichen Schlüssel abrufen möchten.
Klicken Sie in der Zeile für die Schlüsselversion, für die Sie den öffentlichen Schlüssel abrufen möchten, auf Mehr anzeigen
.Klicken Sie auf Öffentlichen Schlüssel abrufen.
Der öffentliche Schlüssel wird in der Eingabeaufforderung angezeigt. Sie können den öffentlichen Schlüssel in die Zwischenablage kopieren. Klicken Sie auf Herunterladen, um den öffentlichen Schlüssel herunterzuladen.
Wenn die Option Öffentlichen Schlüssel abrufen nicht angezeigt wird, prüfen Sie Folgendes:
- Der Schlüssel ist ein asymmetrischer Schlüssel.
- Die Schlüsselversion ist aktiviert.
- Sie haben die Berechtigung
cloudkms.cryptoKeyVersions.viewPublicKey
.
Der Dateiname eines öffentlichen Schlüssels, der von der Google Cloud Console heruntergeladen wurde, hat das Format:
KEY_RING-KEY_NAME-KEY_VERSION.pub
Die Bestandteile des Dateinamens sind per Bindestrich voneinander getrennt, z. B. ringname-keyname-version.pub
gcloud
Wenn Sie Cloud KMS in der Befehlszeile verwenden möchten, müssen Sie zuerst die neueste Version der Google Cloud CLI installieren oder ein Upgrade ausführen.
gcloud kms keys versions get-public-key KEY_VERSION \ --key KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --output-file OUTPUT_FILE_PATH
Ersetzen Sie Folgendes:
KEY_VERSION
: die Versionsnummer des Schlüssels.KEY_NAME
: Der Name des Schlüssels.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältLOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.OUTPUT_FILE_PATH
: Der Pfad, unter dem Sie die Datei mit dem öffentlichen Schlüssel speichern möchten, z. B.public-key.pub
.
Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help
aus.
C#
Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Cloud KMS C# SDK installieren.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Cloud KMS Go SDK installieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Cloud KMS Java SDK installieren.
Node.js
Um diesen Code auszuführen, richten Sie zuerst eine Node.js-Entwicklungsumgebung ein und installieren Sie das Cloud KMS Node.js SDK.
PHP
Um diesen Code auszuführen, müssen Sie zuerst PHP in Google Cloud verwenden lernen und das Cloud KMS PHP SDK installieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Cloud KMS Python SDK installieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Cloud KMS Ruby SDK installieren.
API
In diesen Beispielen wird curl als HTTP-Client verwendet, um die Verwendung der API zu demonstrieren. Weitere Informationen zur Zugriffssteuerung finden Sie unter Auf die Cloud KMS API zugreifen.
Sie können den öffentlichen Schlüssel mithilfe der Methode CryptoKeyVersions.getPublicKey abrufen.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION/publicKey" \ --request "GET" \ --header "authorization: Bearer TOKEN"
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des Projekts, das den Schlüsselbund enthält.LOCATION
: der Cloud KMS-Speicherort des Schlüsselbunds.KEY_RING
: der Name des Schlüsselbunds, der den Schlüssel enthältKEY_NAME
: Der Name des Schlüssels.KEY_VERSION
: die Versionsnummer des Schlüssels.
Die Ausgabe sollte in etwa so aussehen:
{ "pem": "-----BEGIN PUBLIC KEY-----\nQ29uZ3JhdHVsYXRpb25zLCB5b3UndmUgZGlzY292ZX JlZCB0aGF0IHRoaXMgaXNuJ3QgYWN0dWFsbHkgYSBwdWJsaWMga2V5ISBIYXZlIGEgbmlj ZSBkYXkgOik=\n-----END PUBLIC KEY-----\n", "algorithm": "ALGORITHM", "pemCrc32c": "2561089887", "name": "projects/PROJECT_ID/locations/LOCATION/keyRings/ KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/ KEY_VERSION", "protectionLevel": "PROTECTION_LEVEL" }