Auf dieser Seite wird erläutert, wie Sie von Nutzern verwaltete Dienstkonten und deren private Schlüssel verwenden, um eine Anwendung bei der Cloud IoT Core API zu authentifizieren.
Sie können Anwendungen zum Verwalten von Registries und Geräten verwenden. Beispiele finden Sie in den Codebeispielen für Cloud IoT Core.
Mit Dienstkonten authentifizieren
Ein nutzerverwaltetes Dienstkonto ist eine Art von Google-Konto, das eine Anwendung darstellt. Nutzerverwaltete Dienstkonten werden hauptsächlich für die Server-zu-API-Authentifizierung verwendet.
Cloud IoT Core verwendet zwei Arten der Authentifizierung. Zur Authentifizierung von Geräten bei Cloud IoT Core verwenden Sie private/öffentliche Schlüsselpaare und JSON-Webtokens. Bei der Authentifizierung einer Anwendung bei der Cloud IoT Core API müssen Sie jedoch die GCP-Authentifizierung in Form von nutzerverwalteten Dienstkonten verwenden.
Nutzerverwaltete Dienstkonten haben eigene private Schlüssel, die in verschiedenen Formaten vorliegen. Durch das Bereitstellen des privaten Schlüssels eines vom Nutzer verwalteten Dienstkontos für eine Anwendung können Sie Anmeldedaten erstellen und die Anwendung authentifizieren.
Die empfohlene Methode zur Authentifizierung von Anwendungen ist die Verwendung von nutzerverwalteten Dienstkonten und privaten JSON-Schlüsseln, da diese die am häufigsten unterstützten und flexiblen Methoden sind. Sie können ein nutzerverwaltetes Dienstkonto erstellen und einen privaten JSON-Schlüssel herunterladen. Führen Sie dazu die Schritte unter Erste Schritte bei der Authentifizierung aus.
In den folgenden Beispielen wird gezeigt, wie Sie mit dem privaten JSON-Schlüssel eines nutzerverwalteten Dienstkontos eine Anwendung bei der Cloud IoT Core API authentifizieren:
C#
Beachten Sie, dass das C#-Beispiel nicht explizit eine JSON-Schlüsseldatei angibt, sondern den in der UmgebungsvariablenGOOGLE_APPLICATION_CREDENTIALS
angegebenen Speicherort verwendet. Die Clientbibliothek kann dann die Anmeldedaten implizit bestimmen.
Go
Im Go-Beispiel wird keine JSON-Schlüsseldatei explizit angegeben. Stattdessen wird der in der UmgebungsvariableGOOGLE_APPLICATION_CREDENTIALS
angegebene Speicherort verwendet. Die Clientbibliothek kann dann die Anmeldedaten implizit bestimmen. Das Beispiel wird auch beim Erstellen einer Registry verwendet. Die tatsächliche Authentifizierung ist jedoch unten hervorgehoben.
Java
Im Java-Beispiel ist keine JSON-Schlüsseldatei angegeben. Stattdessen wird der in der UmgebungsvariableGOOGLE_APPLICATION_CREDENTIALS
angegebene Speicherort verwendet. Die Clientbibliothek kann dann die Anmeldedaten implizit bestimmen. Das Beispiel wird auch beim Erstellen einer Registry verwendet. Die tatsächliche Authentifizierung ist jedoch unten hervorgehoben.
Node.js
PHP
Im PHP-Beispiel wird keine JSON-Schlüsseldatei explizit angegeben. Stattdessen wird der in der UmgebungsvariableGOOGLE_APPLICATION_CREDENTIALS
angegebene Speicherort verwendet. Die Clientbibliothek kann dann die Anmeldedaten implizit bestimmen. Das Beispiel wird auch beim Erstellen einer Registry verwendet. Die tatsächliche Authentifizierung ist jedoch unten hervorgehoben.
Python
Im Python-Beispiel wird keine JSON-Schlüsseldatei explizit angegeben. Stattdessen wird der in der UmgebungsvariableGOOGLE_APPLICATION_CREDENTIALS
angegebene Speicherort verwendet. Die Clientbibliothek kann dann die Anmeldedaten implizit bestimmen.
Ruby
Im Ruby-Beispiel wird keine JSON-Schlüsseldatei explizit angegeben. Stattdessen wird der in der UmgebungsvariableGOOGLE_APPLICATION_CREDENTIALS
angegebene Speicherort verwendet. Die Clientbibliothek kann dann die Anmeldedaten implizit bestimmen. Das Beispiel wird auch beim Erstellen einer Registry verwendet. Die tatsächliche Authentifizierung ist jedoch unten hervorgehoben.