Installierte Anwendungen mit Nutzerkonten authentifizieren
In dieser Anleitung wird die Authentifizierung mithilfe von Benutzerkonten für den Zugriff auf die BigQuery API erläutert, wenn die Installation Ihrer Anwendung auf den Computern der Nutzer erfolgt.
Damit die Anwendung nur auf BigQuery-Tabellen zugreift, die dem Endnutzer zur Verfügung stehen, ist eine Authentifizierung mit Nutzeranmeldedaten erforderlich. Mit den Nutzeranmeldedaten können nur Abfragen für das Google Cloud-Projekt des Endnutzers und nicht für das Projekt der Anwendung ausgeführt werden. Infolgedessen werden dem Nutzer anstelle der Anwendung Abfragen in Rechnung gestellt.
Hinweis
- Erstellen Sie ein Google Cloud-Projekt für die von Ihnen installierte Anwendung.
- Installieren Sie die BigQuery-Clientbibliotheken.
-
Installieren Sie Authentifizierungsbibliotheken.
Java
Wenn Sie Maven verwenden, fügen Sie die folgenden Abhängigkeiten in Ihre POM-Datei ein.
Python
Installieren Sie die oauthlib-Integration für Google Auth.
pip install --upgrade google-auth-oauthlib
Node.js
Installieren Sie die oauthlib-Integration für Google Auth.
npm install google-auth-library
npm install readline-promise
Clientanmeldedaten einrichten
Verwenden Sie die folgende Schaltfläche, um ein Projekt auszuwählen und die erforderlichen Anmeldedaten zu erstellen.Anmeldedaten manuell erstellen
- Gehen Sie zur Seite Anmeldedaten in der Google Cloud Console.
- Füllen Sie die Pflichtfelder im OAuth-Zustimmungsbildschirm aus.
- Klicken Sie auf der Seite Anmeldedaten auf Anmeldedaten erstellen.
Wählen Sie OAuth-Client-ID aus.
- Wählen Sie als Anwendungstyp Desktop aus und klicken Sie auf Erstellen.
- Laden Sie die Anmeldedaten herunter. Klicken Sie dazu auf JSON herunterladen.
Speichern Sie die Datei mit den Anmeldedaten unter
client_secrets.json
. Diese Datei muss mit Ihrer Anwendung bereitgestellt werden.
Authentifizieren und API aufrufen
-
Verwenden Sie die Clientanmeldedaten, um den OAuth 2.0-Flow auszuführen.
Java
Python
Node.js
-
Verwenden Sie die authentifizierten Anmeldedaten für die Verbindung zur BigQuery API.
Java
Python
Node.js
Wenn Sie den Beispielcode ausführen, wird ein Browser gestartet, der eine Anfrage für den Zugriff auf das Projekt stellt, das den Clientschlüsseln zugeordnet ist. Sie können die ausgegebenen Anmeldedaten verwenden, um auf die BigQuery-Ressourcen des Nutzers zuzugreifen, da im Beispiel der BigQuery-Bereich angefordert wurde.
Weitere Informationen
- Weitere Möglichkeiten zur Authentifizierung Ihrer Anwendung für den Zugriff auf die BigQuery API
- Authentifizierung mit Endnutzeranmeldedaten für alle Cloud APIs