Wie konfiguriere ich das Google BigQuery-Befehlszeilentool für die Verwendung eines Dienstkontos?

8

Ich habe ein Dienstkonto mithilfe der Google API-Konsole erstellt und möchte dieses Dienstkonto für die Google BigQuery-CLI (bq) Werkzeug.

Ich habe das Befehlszeilentool verwendet, um erfolgreich auf den BigQuery-Dienst zuzugreifen, indem ich meine gültigen OAuth2-Anmeldeinformationen in ~ / .bigquery.v2.token verwendet habe. Ich kann jedoch keine Dokumentation finden, um diese Datei zu ändern ( oder das Tool anderweitig konfigurieren), um stattdessen ein Dienstkonto zu verwenden.

Hier ist meine aktuelle .bigquery.v2.token Datei

%Vor%

Meine andere Datei: ~ / .bigqueryrc sieht im Allgemeinen so aus:

%Vor%

Ich habe versucht, den Parameter "credential_file" in die private Schlüsseldatei ".p12" für mein Dienstkonto zu setzen, aber ohne Erfolg gibt es mir den folgenden Fehler zurück:

%Vor%

Und bittet mich, zu einem Link in meinem Browser zu gehen, um meine OAuth2-Zugangsdaten erneut einzurichten.

Die anfängliche Konfigurationsoption der Kommandozeilen-Tools "init":

%Vor%

zeigt keine hilfreichen Informationen zum Einrichten dieses Tools für die Verwendung eines Dienstkontos an.

    
jpennell 06.11.2012, 15:43
quelle

2 Antworten

5

Am Ende habe ich eine Dokumentation gefunden, wie man das einrichten kann

%Vor%

Sie können dies entweder für jede bq-Anfrage (bigquery commandline client) festlegen, dh:

%Vor%

Oder Sie können Standardeinstellungen in Ihrer ~ / .bigquerryc Datei wie folgt einrichten

%Vor%

Das Dienstkonto finden Sie in der Google-API-Konsole, und Sie richten service_account_private_key_password ein, als Sie Ihr Dienstkonto erstellt haben (standardmäßig "notasecret").

Hinweis: Dateipfade in .bigquerryrc mussten der vollständige Pfad sein, ich konnte ~ / .bigquery nicht verwenden ...

Da einige zusätzliche Abhängigkeiten erforderlich waren, müssen Sie openssl über yum / apt-get

installieren %Vor%

und pyopenssl über easy install / pip

%Vor%     
jpennell 06.11.2012, 16:30
quelle
1

Das bq-Tool benötigt zwei Konfigurationsdateien, die durch das Flag --bigquerryc und das --credential_file gesteuert werden. Wenn keiner gefunden wird, versucht bq beim Start automatisch zu initialisieren.

Um dies für die Datei --bigqueryrc zu vermeiden, können Sie eine Datei ".big queryrc" am Standardspeicherort ablegen oder sie mit --bigqueryrc auf einen schreibbaren Dateipfad überschreiben.

    
Michael Sheldon 23.11.2013 01:51
quelle

Tags und Links